graduação em engenharia elétrica - ufjf.br · disciplina “métodos de otimização ene081”...
TRANSCRIPT
Graduação em Engenharia Elétrica
MÉTODOS DE OTIMIZAÇÃO – ENE081
PROF. IVO CHAVES DA SILVA JUNIOR E-mail: [email protected]
Aula Número: 11
UNIVERSIDADE FEDERAL DE JUIZ DE FORA
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear (PNL)
ÚLTIMAS AULAS
MÉTODO DE NEWTON –PNL Irrestrita Monovariável
CONVEXIDADES
TRABALHO
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear Irrestrita
Método da Bisseção
Métodos de Resolução – PNL Irrestrita com uma única variável
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Método baseado na redução do intervalo de canalização da variável (x) para se obter a solução de f(x)=0 não linear, sendo f(x) contínua e com solução dentro de um intervalo inicial de canalização [a,b].
Programação Não Linear - Método da Bisseção
Se há uma solução entre [a,b]:
f(a) x f(b) <0
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear - Método da Bisseção
Passos de Resolução – Método da Bisseção
Passo 1: Determinação do primeiro intervalo [a,b] de busca;
Passo 2: Calcule a estimativa da solução numérica
xnovo =(a+ b)2
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear - Método da Bisseção
Passo 4: Novo Intervalo Verificar se solução está entre [a,Xnovo] ou [Xnovo,b]
Se f(a) x f(Xnovo)<0, a solução está entre [a,Xnovo]
Senão, a solução estará entre [Xnovo,b]
Passo 5:
Com base no novo intervalo de busca, calcule a segunda estimativa e volte ao segundo passo
Passo 3: Convergência:
f (x)− f (xnovo ) ≤ tol
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear - Método da Bisseção
Solução Exata f(x*)=0
f(x)
x
Análise Gráfica
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear - Método da Bisseção
a
b
Primeira Estimativa
f(x)
x
Primeiro Intervalo
1° Iteração Erro Aceitável? Não
xnovo =(a+ b)2
Atualização do Intervalo
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear - Método da Bisseção
a
b
Segunda Estimativa
f(x)
x
Segundo Intervalo
2° Iteração Erro Aceitável? Não
xnovo =(a+ b)2
Atualização do Intervalo
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear - Método da Bisseção
a
b
Terceira Estimativa
f(x)
x
Terceiro Intervalo
Erro Aceitável? Sim
Fim do Processo Iterativo
3° Iteração
xnovo =(a+ b)2
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear - Método da Bisseção EXEMPLO: PNL IRRESTRITA VIA MÉTODO DA BISSEÇÃO
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear - Método da Bisseção Max
Área da Seção
Ponto de Máximo f'(x)=30-4x=0
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear - Método da Bisseção
Tolerância à 0.001
Estimativa inicial: xnovo =(a+ b)2
=15
Determinação do novo Intervalo
f ' (0) = 30 f ' (30) = −90 f ' (15) = −30
Novo Intervalo [a,b] à [0,15]
Erro= 0 – (-30) = 30 < Tolerância?
Intervalo [a,b] à [0,30]
se f ' (a)× f ' (xnovo )< 0 solução entre [a, xnovo ]se f ' (a)× f ' (xnovo )> 0 solução entre [xnovo,b]
f'(x)=30-4x=0
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear - Método da Bisseção
Intervalo [a,b] à [0,15]
Estimativa inicial: xnovo =(a+ b)2
= 7,5
Erro= 0 - 0 = 0 < Tolerância?
Fim do Processo
f'(x)=30-4x=0
15
7,5
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear - Método da Bisseção
Exercício (Casa)
Encontre a raíz de f (x) = x3 − 9x +3= 0
utilizando os conceitos do método da bisseção.
Considere o seguinte intervalo inicial [0,0.5].
Tolerância de 0.001
Responda: Quantas iterações foram necessárias? Compare o Método de Newton.
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear Irrestrita
Métodos de Resolução – PNL Irrestrita com Múltiplas Variáveis
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Determine a solução ótima e identifique se a solução ótima é um ponto de máximo, mínimo ou inflexão
f (x1, x2 ) = 3x12 + 4x2
2 −18x1 −16x2 +10
Programação Não Linear Irrestrita
PASSO 1) Derivar a Função Objetivo em relação as variáveis
∂∂x1
f (x1, x2 ) = 6x1 −18 ∂∂x2
f (x1, x2 ) = 8x2 −16
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear Irrestrita
6x1 −18= 0→ x1 = 3 8x2 −16 = 0→ x2 = 2PASSO 2) Fazer as derivadas iguais a zero (solução ótima)
PASSO 3) Verificar se a solução ótima é um ponto de máximo, mínimo ou inflexão.
f (x1, x2 ) = 3x12 + 4x2
2 −18x1 −16x2 +10
ponto de mínimo
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear Irrestrita - MATLAB
10161843),( 2122
2121 +−−+= xxxxxxf
-8 -6 -4 -2 0 2 4 6 8-8 -6 -4 -2 0 2 4 6 8
-100
0
100
200
300
400
500
600
700
800
Como plotar o gráfico de f(x1,x2)???
Comandos meshgrid e mesh
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear Irrestrita - MATLAB
TOOLBOX DE PROGRAMAÇÃO NÃO LINEAR SEM RESTRIÇÕES
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear Irrestrita - MATLAB
10161843),( 2122
2121 +−−+= xxxxxxfMin
-8 -6 -4 -2 0 2 4 6 8-8 -6 -4 -2 0 2 4 6 8
-100
0
100
200
300
400
500
600
700
800
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear Irrestrita - MATLAB
10161843),( 2122
2121 +−−+= xxxxxxfMin
Resposta MATLAB
33)2,3( −=f
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear Irrestrita - MATLAB
10161843),( 2122
2121 +−−+= xxxxxxfMin
Ponto de Mínimo Curvas de nível
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear Irrestrita
Método da Newton
Métodos de Resolução – PNL Irrestrita com Múltiplas Variáveis
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Caso “N” Dimensional
0),( 2111 == xxfy
0),( 2122 == xxfy
PNL Irrestrita com Múltiplas Variáveis
Programação Não Linear Irrestrita
MÉTODO DE NEWTON
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Linearização é feita através da expansão de pela série de Taylor até o 2° termo:
0)( =xf
0)).(()()( 00'0 =−+= xxxfxfxf
0).().(),(),( 022
2
1011
1
102
011211 =−
∂
∂+−
∂
∂+= xx
xfxx
xfxxfxxf
0).().(),(),( 022
2
2011
1
202
012212 =−
∂
∂+−
∂
∂+= xx
xfxx
xfxxfxxf
Programação Não Linear - Método de Newton
Linearização da 1ª Função
Linearização da 2ª Função
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
0.. 22
11
1
11 =Δ
∂
∂+Δ
∂
∂+=Δ x
xfx
xfy
0).().(),(),( 022
2
1011
1
102
011211 =−
∂
∂+−
∂
∂+=− xx
xfxx
xfxxfxxf
0).().(),(),( 022
2
2011
1
202
012212 =−
∂
∂+−
∂
∂+=− xx
xfxx
xfxxfxxf
0.. 22
21
1
22 =Δ
∂
∂+Δ
∂
∂+=Δ x
xfx
xfy
1yΔ 2xΔ1xΔ
Programação Não Linear - Método de Newton
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Forma Matricial:
⎥⎦
⎤⎢⎣
⎡
Δ
Δ
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
∂
∂
∂
∂∂
∂
∂
∂
=⎥⎦
⎤⎢⎣
⎡
Δ
Δ
2
1
2
2
1
2
2
1
1
1
2
1 .xx
xf
xf
xf
xf
yy
Matriz Jacobiana = Jac
0.. 22
11
1
11 =Δ
∂
∂+Δ
∂
∂+=Δ x
xfx
xfy 0.. 2
2
21
1
22 =Δ
∂
∂+Δ
∂
∂+=Δ x
xfx
xfy
Programação Não Linear - Método de Newton
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Sistema de Equações a ser resolvido:
Atualização das Variáveis: 1
011 xxx Δ+=
⎥⎦
⎤⎢⎣
⎡
Δ
Δ
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
∂
∂
∂
∂∂
∂
∂
∂
=⎥⎦
⎤⎢⎣
⎡
Δ
Δ
−
2
1
1
2
2
1
2
2
1
1
1
2
1 .yy
xf
xf
xf
xf
xx
2022 xxx Δ+=
yJacx Δ=Δ − .1
Programação Não Linear - Método de Newton
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
⋅
⎥⎥⎥⎥⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢⎢⎢⎢⎢
⎣
⎡
∂
∂
∂
∂
∂
∂
∂
∂
∂
∂
∂
∂∂
∂
∂
∂
∂
∂
=
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
n
2
1
n
n
2
n
1
n
n
2
2
2
1
2
n
1
2
1
1
1
n
2
1
Δx
ΔxΔx
xf
xf
xf
xf
xf
xf
xf
xf
xf
Δy
ΔyΔy
Sistema Genérico de Equações
Programação Não Linear - Método de Newton
MATRIZ JACOBIANA
VETO
R D
E ER
RO
S VETO
R D
E VAR
IÁVEIS
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
0=h
)()( 0=−=Δ hiiii xfxfy Erros iniciais
Enquanto tolerânciamax >Δ iy faça
Jac Matriz Jacobiana
ii yJacx Δ×=Δ −1][ Passo de convergência
hi
hi
hi xxx Δ+=+1 Atualização de x
Atualização dos Erros
fim
)()( 1+−=Δ hiiii xfxfy
Contador de Iterações
Programação Não Linear - Método de Newton
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
⎩⎨⎧
−=−
=+
1xx2x1xx2x
212
211Condição inicial:
⎪⎩
⎪⎨⎧
=
=
0x
0x(0)2
(0)1
Escreva na sintaxe do MATLAB o método de Newton para a resolução do sistema de equações abaixo:
6;-1e tol =
Exemplo
Solução Exata: 11 +=x 12 −=x
Programação Não Linear - Método de Newton
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear - Com Restrições
Problemas de programação não linear com restrições
Pelo menos a função objetivo e/ou uma das restrições deve ser uma função não linear
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Programação Não Linear - Com Restrições de Igualdade
Técnicas de Resolução - PNL
Os multiplicadores de Lagrange podem ser utilizados para resolver problemas de PNL em que todas as restrições estão descritas na forma de igualdade (forma PADRÃO).
Somente restrições de igualdade
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Resolução:
1º Passo) Igualar as restrições de igualdade a zero e multiplica-las pelo seu respectivo multiplicador de Lagrange.
2º Passo) Adicionar a função objetivo as restrições geradas no passo1, Dando origem e chamada Função Lagrangeana.
Programação Não Linear - Com Restrições de Igualdade
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
3º Passo) Para obter o sistema de equações para a obtenção dos valores primais (x) e duais (multiplicadores de Lagrange), calculam-se as derivadas parciais da função Lagrangeana e iguala-se a zero.
Programação Não Linear - Com Restrições de Igualdade
4º Passo) Resolver o sistema de equações do passo anterior. OBS: Sistema pode ser linear ou não linear!!!!
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Exercício: Obtenha o ponto ótimo do problema abaixo e
z(x, y) = −x2 − y2 + xy+ 6x + 2ys.a : 2x + 2y =12
x, y ≥ 0
determine se a FOB é convexa (ou estritamente convexa), côncava(ou estritamente côncava), convexa e côncava simultaneamente ou nenhuma delas.
Programação Não Linear - Com Restrições de Igualdade
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Resolução:
1º Passo) Igualar as restrições de igualdade a zero e multiplica-las pelo seu respectivo multiplicador de Lagrange.
2º Passo) Adicionar a função objetivo as restrições geradas no passo1, Dando origem e chamada Função Lagrangeana.
0)22(12 =+− yx )2212(1 yx−−λ
)2212(26),,( 122
1 yxyxxyyxyxL −−++++−−= λλ
Programação Não Linear - Com Restrições de Igualdade
z(x, y) = −x2 − y2 + xy+ 6x + 2ys.a : 2x + 2y =12
x, y ≥ 0
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
3º Passo) Para obter o sistema de equações para a obtenção dos valores primais (x) e duais (multiplicadores de Lagrange), calculam-se as derivadas parciais da função Lagrangeana e iguala-se a zero.
∂L(x, y,λ1)∂x
= −2x + y+ 6− 2λ1 = 0
∂L(x, y,λ1)∂y
= −2y+ x + 2− 2λ1 = 0
∂L(x, y,λ1)∂λ1
=12− 2x − 2y = 0
Programação Não Linear - Com Restrições de Igualdade
)2212(26),,( 122
1 yxyxxyyxyxL −−++++−−= λλ
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
4º Passo) Resolução do Sistema de Equações
∂L(x, y,λ1)∂x
= −2x + y+ 6− 2λ1 = 0
∂L(x, y,λ1)∂y
= −2y+ x + 2− 2λ1 = 0
∂L(x, y,λ1)∂λ1
=12− 2x − 2y = 0
−2 1 −21 −2 −2−2 −2 0
"
#
$$$
%
&
'''
xyλ1
"
#
$$$
%
&
'''=
−6−2−12
"
#
$$$
%
&
'''
xyλ1
!
"
###
$
%
&&&=
3,6662,3330,5
!
"
###
$
%
&&&
Programação Não Linear - Com Restrições de Igualdade
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
xyλ1
!
"
###
$
%
&&&=
3,6662,3330,5
!
"
###
$
%
&&&
z(x, y) = −x2 − y2 + xy+ 6x + 2ys.a : 2x + 2y =12
x, y ≥ 0
z =16,333
Problema:
solução:
Programação Não Linear - Com Restrições de Igualdade
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Convexidade da FOB ? Determinante da Matriz Hessiana (H)
[ ]⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
∂
∂
∂∂
∂∂∂
∂
∂
∂
=
22
2
12
221
2
21
2
21 ),(
xf
xxf
xxf
xf
xxfH
Programação Não Linear - Com Restrições de Igualdade
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Max z(x, y) = −x2 − y2 + xy+ 6x + 2y
H z(x, y)[ ] =
∂2z∂x2
∂2z∂x ∂y
∂2z∂y∂x
∂2z∂y2
"
#
$$$$$
%
&
'''''
= −2 11 −2
"
#$
%
&'
Programação Não Linear - Com Restrições de Igualdade
Det −2 11 −2
"
#$
%
&'= 3
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Max z(x, y) = −x2 − y2 + xy+ 6x + 2y
Programação Não Linear - Com Restrições de Igualdade
-10-8-6-4-20246810
-10-8-6-4-20246810
-350
-300
-250
-200
-150
-100
-50
0
50 X: 4.5Y: 3.5Z: 17.25
Ponto de Máximo X=4.5 e Y=3.5 Z=17.25
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Exercício:
Programação Não Linear - Com Restrições de Igualdade
Min f (x, y) = 6x2 + 4y2 +1s.a24x + 24y = 360x, y ≥ 0
Disciplina “Métodos de Otimização ENE081” – Aula Número: 11 – PROF. IVO CHAVES DA SILVA JUNIOR
Solução:
Programação Não Linear - Com Restrições de Igualdade
x*, y*,λ*( ) = 6,9,3( )
Min f (x, y) = 6x2 + 4y2 +1s.a24x + 24y = 360x, y ≥ 0