Rascunho dos acetatos das aulas - norg

Propaganda
Métodos Numéricos C
A. Ismael F. Vaz1
1 Departamento
de Produção e Sistemas
Escola de Engenharia
Universidade do Minho
[email protected]
Ano lectivo 2007/2008
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
1 / 216
Conteúdo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Introdução
Erros
Zeros de funções
Resolução de sistemas lineares
Resolução de sistemas não lineares
Interpolação polinomial
Mínimos quadrados lineares
Mínimos quadrados não lineares
Integração numérica
Optimização não linear sem restrições
Método de Davies Swann e Campey
Método de Nelder Mead
Método de Segurança de Newton
Método quasi-Newton
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
2 / 216
Introdução
Contents
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Introdução
Erros
Zeros de funções
Resolução de sistemas lineares
Resolução de sistemas não lineares
Interpolação polinomial
Mínimos quadrados lineares
Mínimos quadrados não lineares
Integração numérica
Optimização não linear sem restrições
Método de Davies Swann e Campey
Método de Nelder Mead
Método de Segurança de Newton
Método quasi-Newton
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
3 / 216
Introdução
Apresentação - Docente
Aulas teóricas
A. Ismael F. Vaz - [email protected]
www.norg.uminho.pt/aivaz
Aulas teórico-práticas
Isabel Espírito Santo - [email protected]
www.norg.uminho.pt/iapinho
Horário de atendimento
A combinar...
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
4 / 216
Introdução
Apresentação - Disciplina
Uma primeira parte de métodos numéricos e uma segunda parte de
optimização não linear sem restrições;
Página da disciplina;
http://www.norg.uminho.pt/aivaz
7 fichas TPs para realizar ao longo do semestre (nas aulas Ts).
A classificação final é a soma das notas das fichas TPs.
Não é obrigatória a presença nas aulas Ts e TPs. Mas atenção aos
momentos de avaliação.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
5 / 216
Introdução
Material necessário e de apoio
Calculadora científica;
Folhas das fichas TPs;
www.norg.uminho.pt/aivaz
Papel e caneta;
Livro de Computação Numérica;
www.norg.uminho.pt/emgpf
Software CoNum;
www.norg.uminho.pt/emgpf
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
6 / 216
Introdução
Programa detalhado / Avaliações
Dia
25-Fev
29-Fev
04-Mar
11-Mar
01-Abr
08-Abr
Matéria
Apresentação da disciplina. Erros. Algarismos significativos.
Fórmula fundamental dos erros. Erros de truncatura.
Solução de equações não lineares. Método dos gráficos. Método da secante e sua convergência. Método de Newton e sua
convergência. Critérios de paragem.
Sistemas de equações lineares. Eliminação de Gauss com pivotagem parcial.
Métodos iterativos de Gauss-Seidel e Jacobi. Método de Newton para sistemas de equações não lineares. Avaliação sobre
zeros de funções (2.5 valores).
Interpolação polinomial. Diferenças divididas. Fórmula interpoladora de Newton. Erro da fórmula interpoladora de Newton. Avaliação sobre sistemas lineares e não lineares (2.5 valores).
Mínimos quadrados polinomiais e modelos lineares. Mínimos
quadrados não lineares. Método de Gauss-Newton.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
7 / 216
Introdução
Programa detalhado / Avaliações - cont.
Dia
15-Abr
22-Abr
29-Abr
06-Mai
20-Mai
27-Mai
03-Jun
17-Jun
Matéria
Revisões. Avaliação sobre interpolação e mínimos quadrados
(3 valores).
Integração numérica. Fórmulas simples e compostas do Trapézio, Simpson e 3/8.
Optimização não linear sem restrições. Condições de optimalidade. Avaliação sobre integração numérica (2.5 valores).
Procura unidimensional. Método DSC. Procura multidimensional. Método de Nelder-Mead.
Método de Newton. Método de segurança de Newton. Avaliação sobre condições de optimalidade e DSC + NM (3 valores).
Procura unidimensional com divisões sucessivas de α por 2.
Critério de Armijo. Questionários.
Método quasi-Newton. Revisões. Avaliação sobre segurança
de Newton (4 valores).
Revisões. Avaliação sobre quasi-Newton (2.5 valores).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
8 / 216
Introdução
Motivação da disciplina
Presente em todos os cursos de engenharia (aplicações em todas as
áreas da engenharia);
A disciplina de métodos numéricos dedica-se à resolução numérica de
problemas matemáticos. Com o desenvolvimento dos computadores
encontra-se direccionada para a implementação de algoritmos estáveis.
A optimização consiste em determinar soluções óptimas para problema
matemáticos.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
9 / 216
Introdução
Controlo óptimo - Um exemplo
Problema de optimização do processo semi-contínuo de produção de
Etanol.
O problema de optimização é: (t0 = 0 e tf = 61.2 dias)
max J(tf ) ≡ x3 (tf )x4 (tf )
com
u(t)
s.a
dx1
x1
= g1 x1 − u
dt
x4
dx2
150 − x2
= −10g1 x1 + u
dt
x4
x3
dx3
= g2 x1 − u
dt
x4
dx4
=u
dt
0 ≤ x4 (tf ) ≤ 200
0 ≤ u(t) ≤ 12
∀t ∈ [t0 , tf ]
A. Ismael F. Vaz (UMinho)
0.408
x2
g1 =
1 + x3 /16
0.22 + x2
1
x2
g2 =
1 + x3 /71.5
0.44 + x2
onde x1 , x2 e x3 são as concentrações da
massa celular, substrato e produto (g/L),
e x4 é o volume (L). As condições iniciais
são:
x(t0 ) = (1, 150, 0, 10)T .
MN C
2007/2008
10 / 216
Introdução
Abordagem para a resolução
Grande exigência em termos numéricos;
Grande exigência em termos de programação;
Solução da equação diferencial com o CVODE (software em C);
Problemas codificados em AMPL (linguagem de modelação);
Algoritmo para optimização sem derivadas;
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
11 / 216
Erros
Contents
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Introdução
Erros
Zeros de funções
Resolução de sistemas lineares
Resolução de sistemas não lineares
Interpolação polinomial
Mínimos quadrados lineares
Mínimos quadrados não lineares
Integração numérica
Optimização não linear sem restrições
Método de Davies Swann e Campey
Método de Nelder Mead
Método de Segurança de Newton
Método quasi-Newton
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
12 / 216
Erros
Formato de vírgula flutuante normalizado
f l(x) = ±0.d1 d2 ...dk × 10e
onde, 0.d1 d2 . . . dk corresponde à mantissa, e e é o expoente.
f lt (x) representa o valor de x em vírgula flutuante truncado e
f la (x) representa o valor de x em vírgula flutuante arredondado.
Exemplo
x=
f lt (x) = 0.66666 × 100
f la (x) = 0.66667 × 100
2
3
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
13 / 216
Erros
Formato de vírgula flutuante
(norma IEEE-754, 32 bits)
σ
1 bit
e + 64
7 bits
d1
4 bits
d2
4 bits
d3
4 bits
d4
4 bits
d5
4 bits
d6
4 bits
Exemplo
−1
x = 2490.125 = 9 × 162 + 11 × 161 + 10 × 160 +
2 × 316 =
−1
−2
−3
−4
9 × 16 + 11 × 16 + 10 × 16 + 2 × 16
× 16
0
σ
1000011
e + 64
A. Ismael F. Vaz (UMinho)
1001
d1
1011
d2
1010
d3
MN C
0010
d4
0000
d5
0000
d6
2007/2008
14 / 216
Erros
Exemplo de programação
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
15 / 216
Erros
Exemplo de programação
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
16 / 216
Erros
Erros
Seja x o valor exacto e x o seu valor aproximado, que será usado nos
cálculos
x − x é o erro absoluto (normalmente não se pode calcular, porque x
é desconhecido);
|x − x| ≤ δx é o limite superior do erro absoluto;
rx =
|x−x|
|x|
=
δx
|x|
≈
δx
|x|
é o erro relativo.
Exemplo
Pediu-se a duas pessoas para contarem laranjas de dois cestos. A primeira contou
980 laranjas num cesto de 1000 e a segunda contou 480 num cesto de 500.
Apesar de cometerem o mesmo erro absoluto (δ1 = 20 laranjas e δ2 = 20 laranjas)
20
20
a segunda cometeu um erro maior, visto que r1 = 1000
= 0.02 e r2 = 500
= 0.04.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
17 / 216
Erros
Fórmula fundamental dos erros
Dados n valores aproximados, x1 , . . . , xn , e os seus respectivos erros
absolutos é possível calcular um majorante para o erro absoluto cometido
quando se aplica uma função f , através da fórmula fundamental dos erros.
δf ≤ Mx1 δx1 + Mx2 δx2 + ... + Mxn δxn
onde maxx∈I ∂∂f
≤ Mxi , com I = Ix1 × · · · × Ixn e
xi
Ixi = [xi − δxi , xi + δxi ]
rf ≤
A. Ismael F. Vaz (UMinho)
δf
|f (x1 , . . . , xn )|
MN C
2007/2008
18 / 216
Erros
Exemplo
Cálculo dos limites do erro absoluto e relativo do cálculo da função
f (x) = x1 − x2 .
∂f ∂f Temos que ∂x
≤
M
=
1
e
∂x2 ≤ Mx2 = 1, logo
x1
1
δ f = δ x1 + δ x2
e
rf ≤
A. Ismael F. Vaz (UMinho)
δ x1 + δ x2
|x1 − x2 |
MN C
2007/2008
19 / 216
Erros
Algarismos Significativos
Casa decimais são as casas (algarismos) à direita da vírgula.
Os algarismos significativos são aqueles em que temos confiança do seu
valor.
Exemplos:
0.1234567 tem 1 algarismo significativo se δ = 0.05, 2 se δ = 0.005 e 7 se
δ = 0.00000005.
0.0000020 tem 7 casas decimais e 2 algarismos significativos
(δ = 0.00000005).
Quando todas as casas decimais são significativas 0.2 é diferente de 0.20.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
20 / 216
Zeros de funções
Contents
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Introdução
Erros
Zeros de funções
Resolução de sistemas lineares
Resolução de sistemas não lineares
Interpolação polinomial
Mínimos quadrados lineares
Mínimos quadrados não lineares
Integração numérica
Optimização não linear sem restrições
Método de Davies Swann e Campey
Método de Nelder Mead
Método de Segurança de Newton
Método quasi-Newton
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
21 / 216
Zeros de funções
Forma geral do problema
Pretende-se determinar x∗ tal que
f (x) = 0
Exemplo
Temos x∗ = −0.567143290409784 como solução para
ex + x = 0
Nota: uma equação não linear pode não ter solução, ou ter mais do que
uma.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
22 / 216
Zeros de funções
Métodos iterativos
Uma sequência diz-se iterativa se é definida por uma função F
independente de k e dependente de um ou vários elementos anteriores a ele,
xk = F (xk−1 , xk−2 , . . . )
Aproximações iniciais
Um método que se baseie numa sequência iterativa com k − 1 elementos
anteriores necessita também de k − 1 valores iniciais.
Exemplo
xk = xk−1 + xk−2
Partindo de x0 = 1 e x1 = 1 temos x2 = x1 + x0 = 2,
x3 = x2 + x1 = 2 + 1 = 3, x4 = x3 + x2 = 3 + 2 = 5 gera uma sequência
com os números de Fibonacci.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
23 / 216
Zeros de funções
Convergência
Uma sequência iterativa diz-se convergente quando
lim xk = x∗
k→∞
Convergência superlinear
|x∗ − xk+1 |
= L ou
k→+∞ |x∗ − xk |1.618
lim
|x∗ − xk+1 |
=0
k→+∞ |x∗ − xk |
lim
Convergência quadrática
|x∗ − xk+1 |
=L
k→+∞ |x∗ − xk |2
lim
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
24 / 216
Zeros de funções
Critério de Paragem
A sequência de aproximações pode ser infinita. Como se pretende obter
uma aproximação à solução implementa-se um critério de paragem.
Estimativa do erro relativo
dk =
|xk+1 − xk |
≤ 1
|xk+1 |
Valor da função
|f (xk+1 )| ≤ 2
Número máximo de iterações
k ≥ nmax
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
25 / 216
Zeros de funções
Método dos gráficos
Uma aproximação ao zero da função f (x) pode obter-se
pela intersecção do gráfico de f (x) com o eixo dos xx;
se f (x) = g(x) − h(x) os zeros de f (x) são os pontos de intersecção
de g(x) com h(x).
O método dos gráficos é frequentemente usado para obtermos uma
aproximação inicial para outros métodos mais precisos.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
26 / 216
Zeros de funções
Exemplo
f (x) = ex + x
g(x) = ex
h(x) = −x
1
0.8
0.6
g(x)
0.4
h(x)
y
0.2
0
−0.2
−0.4
f(x)
−0.6
−0.8
−1
−0.9
A. Ismael F. Vaz (UMinho)
−0.8
−0.7
−0.6
−0.5
x
MN C
−0.4
−0.3
−0.2
−0.1
0
2007/2008
27 / 216
Zeros de funções
Método da bissecção
Se f (xi )f (xs ) < 0 então existe um número ímpar de raízes de f (x) no
intervalo [xi , xs ].
Aproxima-se da raiz calculando xk =
xi +xs
2 ,k
= 1, 2, . . .
Considera-se o intervalo
[xi , xk ] se f (xi )f (xk ) < 0 e faz-se xs ← xk
ou
[xk , xs ] se f (xk )f (xs ) < 0 e faz-se xi ← xk
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
28 / 216
Zeros de funções
Interpretação gráfica (Bissecção)
f (x) = ex + x
10
8
f(x)
6
4
2
xk+1
xi
0
xk
xs
xs
−2
−2
−1.5
A. Ismael F. Vaz (UMinho)
−1
−0.5
0
x
MN C
0.5
1
1.5
2
2007/2008
29 / 216
Zeros de funções
Método da secante
Método iterativo em que se fornece o x1 e x2 (a raiz não está
necessariamente no intervalo [x1 , x2 ]). O próximo valor é calculado pela
seguinte fórmula (equação iterativa):
xk+1 = xk −
(xk − xk−1 )f (xk )
, k = 2, 3, . . .
f (xk ) − f (xk−1 )
Zeros complexos: O método da secante também calcula zeros complexos,
bastando para isso usar aritmética complexa.
Convergência: A convergência do método da Secante depende do valor de
M
00
0
2m ser pequeno. M é o max |f (ξ)| e m é o min |f (η)|, onde ξ, η ∈ I.
k+1 = −
A. Ismael F. Vaz (UMinho)
f 00 (ξ)
k−1 k
2f 0 (η)
MN C
2007/2008
30 / 216
Zeros de funções
Interpretação gráfica (Secante)
f (x) = ex + x
10
8
f(x)
6
4
2
0
xk+2
−2
−2
−1.5
A. Ismael F. Vaz (UMinho)
−1
−0.5
xk
xk+1
0
x
MN C
0.5
xk−1
1
1.5
2
2007/2008
31 / 216
Zeros de funções
Método de Newton
Método iterativo em que se fornece o x0 . O próximo valor é calculado pela
seguinte formula (equação iterativa):
xk+1 = xk −
f (xk )
, k = 1, 2, ...
f 0 (xk )
Zeros complexos: O método de Newton também calcula zeros
complexos, bastando para isso usar aritmética complexa.
Convergência: A convergência do método de Newton depende do valor de
M
00
0
2m ser pequeno. M é o max |f (ξ)| e m é o min |f (η)|, onde ξ, η ∈ I.
k+1 = −
A. Ismael F. Vaz (UMinho)
f 00 (ξ) 2
2f 0 (η) k
MN C
2007/2008
32 / 216
Zeros de funções
Interpretação gráfica (Newton)
f (x) = ex + x
10
8
f(x)
6
4
2
0
xk+2
−2
−2
−1.5
A. Ismael F. Vaz (UMinho)
−1
−0.5
xk
xk+1
0
x
MN C
0.5
1
1.5
2
2007/2008
33 / 216
Zeros de funções
Principais propriedades
Ambos possuem convergência local. Superlinear no caso do método
da secante e quadrática no método de newton.
O método da secante não usa derivadas.
O método da secante e de Newton podem falhar quando o
denominador da equação iterativa é próximo de zero, i.e., quando
f (xk ) ≈ f (xk−1 ) ou f 0 (xk ) ≈ 0.
O método da secante e de Newton não convergem necessariamente
para o zero mais próximo da aproximação inicial.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
34 / 216
Zeros de funções
Exemplo ex + x = 0
Método de Newton com x0 = −0.5, ε1 = 0.5, ε2 = 0.1, nmax = 2.
Temos então que f (x) = ex + x e que f 0 (x) = ex + 1.
1a iteração x0 = −0.5
f (−0.5) = e−0.5 − 0.5 = 0.1065 e f 0 (−0.5) = 1.6065.
x1 = x0 −
f (−0.5)
f 0 (−0.5)
= −0.5 −
0.1065
1.6065
= −0.5665
CP:
f (−0.5665) = 1.0082 × 10−3 ≤ 0.1 (Verdadeiro)
|x1 −x0 |
|x1 |
=
|−0.56665+0.5|
|−0.5665|
= 0.1174 ≤ 0.5 (Verdadeiro)
O processo iterativo pára com x∗ ≈ x1 = −0.5665.
E se o ε1 fosse 0.1?
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
35 / 216
Resolução de sistemas lineares
Contents
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Introdução
Erros
Zeros de funções
Resolução de sistemas lineares
Resolução de sistemas não lineares
Interpolação polinomial
Mínimos quadrados lineares
Mínimos quadrados não lineares
Integração numérica
Optimização não linear sem restrições
Método de Davies Swann e Campey
Método de Nelder Mead
Método de Segurança de Newton
Método quasi-Newton
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
36 / 216
Resolução de sistemas lineares
Forma geral do problema

a11 x1 + a12 x2 + · · · + a1n xn = b1



a21 x1 + a22 x2 + · · · + a2n xn = b2
...



an1 x1 + an2 x2 + · · · + ann xn = bn
É um sistema com n equações lineares nas n incógnitas, x1 , x2 , . . . , xn . O
sistema pode ser escrito na forma matricial Ax = b


 

a11 a12 . . . a1n
x1
b1
 a21 a22 . . . a2n   x2   b2 

 


 ...
 ...  =  ... 
an1 an2 . . . ann
xn
bn
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
37 / 216
Resolução de sistemas lineares
Exemplo


  
3 2 −2
x1
1
 9 7 −9   x2  =  1 
6 8 −8
x3
1
É umsistema linearde dimensão 3 × 3. A matriz dos coeficientes
3 2 −2
A =  9 7 −9  ∈ R3×3 e o vector b = (1, 1, 1)T ∈ R3 é o vector dos
6 8 −8
termos independentes.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
38 / 216
Resolução de sistemas lineares
Definições
A característica de uma matriz A, c(A), é o número máximo de linhas
paralelas, ou colunas, linearmente independentes que existem na
matriz.
Para que um sistema seja possível e determinado temos de ter
c(A) = n. Caso contrário (c(A) < n) o sistema é indeterminado ou
impossível.
À matrix (A|b) que se obtém ampliando A com a coluna do termo
independente b chama-se matriz ampliada do sistema.
Triangular superior (inferior): É uma matriz em que os elementos
abaixo (acima) da diagonal principal são zeros.
Tridiagonal: Matriz em que aij = 0, se |i − j| ≥ 2, i, j = 1, . . . , n.
Uma matriz com muitos elementos nulos diz-se esparsa.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
39 / 216
Resolução de sistemas lineares
Tipos de métodos
Métodos directos e estáveis. Métodos que calculam a solução exacta
do sistema ao fim de um número finito de operações elementares, caso
não ocorram erros de arredondamento.
Matrizes dos coeficientes densas e de pequena dimensão.
Métodos iterativos. Métodos que definem uma sequência infinita de
operações, determinando uma sequência de aproximações, cujo limite
é a solução exacta do sistema.
Matrizes dos coeficientes esparsas e de grande dimensão.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
40 / 216
Resolução de sistemas lineares
Estabilidade numérica
Considere-se o seguinte sistema linear:
0.0001x1 + x2 = 1.0001
x1 + x2 =
2
cuja solução é x = (1, 1)T . Usando aritmética de três algarismos
significativos e considerando o multiplicador igual a
1
5
− 0.100×10
−3 = −0.100 × 10 , surge o sistema condensado
0.100 × 10−3 x1 +
x2 = 0.100 × 101
5
− 0.1 × 10 x2 = −0.1 × 105
cuja solução é x = (0, 1)T !!!
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
41 / 216
Resolução de sistemas lineares
Motivação - Continuação
Se nas mesmas condições usarmos a pivotagem parcial temos
x1 + x2 =
2
−3
0.100 × 10 x1 + x2 = 0.100 × 101
m = − 0.100×10
1
−3
= −0.100 × 10−3
x1 + x2 =
2
x2 = 0.100 × 101
cuja solução é x = (1, 1)T .
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
42 / 216
Resolução de sistemas lineares
Eliminação de Gauss com Pivotagem Parcial (EGPP)
Corresponde a eliminação de Gauss, mas em que a linha usada na
eliminação dos elementos da coluna das linhas seguintes é o maior em
módulo.
Exemplo:




3 2 −2 1
9 7 −9 1
 9 7 −9 1  →  3 2 −2 1  m21 = − 3
9
6 8 −8 1
6 8 −8 1
m31 = − 69

9
7 −9
 0 −0.333333
1
0
3.333333 −2
A. Ismael F. Vaz (UMinho)
MN C

1
0.666667  =
0.333333
2007/2008
43 / 216
Resolução de sistemas lineares
Eliminação de Gauss com Pivotagem Parcial (EGPP)

1
9
7 −9  0
3.333333 −2 0.333333 
=
m32 = − −0.333333
=
0.1
0 −0.333333
1 0.666667
3.333333


9
7 −9
 0 3.333333 −2
0
0 0.8
A. Ismael F. Vaz (UMinho)
MN C

1
0.333333 
0.7
2007/2008
44 / 216
Resolução de sistemas lineares
Substituição inversa
Quando a matriz é triangular superior pode-se determinar a solução
directamente, através da substituição inversa.
Exemplo


1
9
7 −9  0 3.333333 −2 0.333333 
0.7
0
0 0.8 vem que
x3 =
0.7
= 0.875,
0.8
x1 =
A. Ismael F. Vaz (UMinho)
x2 =
0.333333 − (−2) × 0.875
= 0.625
3.333333
1 − (−9) × 0.875 − 7 × 0.625
= 0.5
9
MN C
2007/2008
45 / 216
Resolução de sistemas lineares
Substituição directa
Quando a matriz é triangular inferior pode-se determinar a solução
directamente, através da substituição directa.
Exemplo


1 0 0 2
 2 1 0 3 
3 2 1 4
vem que
x1 =
2
= 2,
1
x3 =
A. Ismael F. Vaz (UMinho)
x2 =
3−2×2
= −1
1
4 − 3 × 2 − 2 × (−1)
=0
1
MN C
2007/2008
46 / 216
Resolução de sistemas lineares
Decomposição LU
Da eliminação de Gauss com Pivotagem Parcial resulta
(A |I ) → (U |J )
Exemplo
2 1 0 1
2
1 0
1
1 2 1 0
→
→
2 1 0 1
1 2 1 0
0 1.5 1 −0.5
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
47 / 216
Resolução de sistemas lineares
Determinantes de Matrizes
s
det(A) = (−1)
n
Y
uii
i=1
onde uii corresponde aos elementos da diagonal da matriz U e s é o
número de trocas de linhas para obter a matriz U .
Exemplo
1 2
2
1
1
det
= (−1) det
= (−1)1 × 2 × 1.5 = −3
2 1
0 1.5
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
48 / 216
Resolução de sistemas lineares
Cálculo da Inversa de Matrizes
A matriz inversa de A (A−1 ) verifica
AA−1 = I = A−1 A.
O cálculo da matriz inversa reduz-se a resolução de n sistemas lineares da
forma
Axj = ej , j = 1, . . . , n,
em que os vectores independentes ej são as colunas da matriz identidade.
O vector solução xj corresponde à coluna j da matriz inversa.
Na prática resolve-se os n sistemas em simultâneo, i.e., resolve-se a
equação
(U |J )
por substituição inversa.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
49 / 216
Resolução de sistemas lineares
Cálculo da Inversa de Matrizes - Exemplo
1
1 2 1 0
2 1 0 1
2
1 0
→
→
2 1 0 1
1 2 1 0
0 1.5 1 −0.5
2
1 0
= −0.3334
x11 = 0−1×0.6667
2
→
1
0 1.5 1
x21 = 1.5 = 0.6667
2
1
1
x12 = 1−1×(−0.3333)
= 0.6667
2
→
−0.5
0 1.5 −0.5
x22 = 1.5 = −0.3333
1 2
−0.3334
0.6667
A inversa de
é
2 1
0.6667 −0.3333
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
50 / 216
Resolução de sistemas lineares
Métodos iterativos
Nos métodos iterativos a solução exacta só é obtida ao fim de uma
sequência infinita de operações.
O processo parte de uma aproximação inicial para a solução do sistema e
usa uma equação iterativa da forma
M x(k+1) = N x(k) + b, para k = 1, 2, . . .
Os métodos em que M e N não dependem de k dizem-se estacionários.
Os métodos de Jacobi e Gauss-Seidel são métodos estacionário.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
51 / 216
Resolução de sistemas lineares
Método Iterativo Jacobi
D matriz dos elementos da diagonal principal, L matriz dos simétricos dos
elementos abaixo da diagonal principal e U matriz dos simétricos dos
elementos acima da diagonal principal.
O método de Jacobi usa a partição de A em D − (L + U ), i.e, M = D e
N =L+U
A equação iterativa fica
Dx(k+1) = (L + U )x(k) + b ou x(k+1) = D−1 (L + U )x(k) + D−1 b
A matriz iteração é
CJ = M −1 N = D−1 (L + U )
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
52 / 216
Resolução de sistemas lineares
Método Iterativo Gauss-Seidel
M =D−L
N =U
A equação iterativa fica
M x(k+1) = N x(k) + b ou x(k+1) = M −1 N x(k) + M −1 b
A matriz iteração é
CGS = M −1 N = (D − L)−1 U.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
53 / 216
Resolução de sistemas lineares
Critério de Paragem
Erro relativo na aproximação
(k+1)
x
− x(k) < 1
x(k+1) Resíduo
A. Ismael F. Vaz (UMinho)
(k+1)
− b < 2
Ax
MN C
2007/2008
54 / 216
Resolução de sistemas lineares
Convergência dos métodos iterativos
Condições suficientes
A simétrica e definida positiva =⇒ GS exibe convergência global;
A é estrita e diagonalmente dominante =⇒ J e GS exibem
convergência global;
kCkp < 1, para qualquer normal p, =⇒ J e GS exibem convergência
global;
C é a matriz iteração de Jacobi ou Gauss-Seidel.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
55 / 216
Resolução de sistemas lineares
Algumas definições
Uma matriz A diz-se simétrica se A = AT .
Uma matriz é definida positiva se dT Ad > 0, ∀d 6= 0. É equivalente a
verificar que todos os determinante das sub-matrizes principais são
maiores do que zero.
Uma matriz
P A diz-se estrita e diagonalmente dominante se
|aii | > nj=1 |aij |, i = 1, . . . , n
j6=i
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
56 / 216
Resolução de sistemas lineares
Exemplo - convergência de Gauss-Seidel
Considere-se a seguinte matriz dos coeficientes de um sistema linear
3 1
A=
1 2
Como a A = AT a matriz é simétrica.
3 1
det(|3|) = 3 > 0 det(A) = 3 × 2 − 1 × 1 = 5 > 0
1 2
Logo A é simétrica e definida positiva e o método de Gauss-Seidel
converge.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
57 / 216
Resolução de sistemas lineares
Exemplo - convergência de Jacobi
Considere-se o seguinte sistema
1 2 1
3 1 1
Como |1| ≯ |2| a matriz dos coeficientes não é estrita e diagonalmente
dominante e nada se pode concluir acerca da convergência do método de
Jacobi. No entanto se trocarmos as linhas temos
3 1 1
1 2 1
e como |3| > |1| e |2| > |1| a matriz é estrita e diagonalmente dominante,
logo o método de Jacobi converge.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
58 / 216
Resolução de sistemas lineares
Exemplo - convergência de Jacobi
Considere-se a seguinte matriz dos coeficientes de um sistema linear
3 2
A=
3 1
Como |3| > |2|, mas |1| ≯ |3| a matriz dos coeficientes não é estrita e
diagonalmente dominante e nada se pode concluir acerca da convergência
do método de Jacobi.
3 0
0 0
0 −2
D=
L=
U=
0 1
−3 0
0
0
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
59 / 216
Resolução de sistemas lineares
Continuação
CJ = D
−1
0.3333 0
0 1
0 −0.6666
−3
0
(L + U ) =
=
0 −2
−3
0
Como
kCJ k∞ = max{|0| + | − 0.6666|, | − 3| + |0|} = 3 ≥ 1
e
kcJ k1 = max{|0| + | − 3|, | − 0.6666| + |0|} = 3 ≥ 1
nada se pode concluir acerca da convergência do método de Jacobi.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
60 / 216
Resolução de sistemas lineares
Uma iteração do método de Gauss-Seidel
Considere-se o seguinte sistema linear
3 1 1
A=
,
1 2 1
x(1) = (0, 0)T e 1 = = 0.1
3 0
0 0
0 −1
D=
L=
U=
0 2
−1 0
0
0
Equação iterativa é
(D − L)x(k+1) = U x(k) + b
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
61 / 216
Resolução de sistemas lineares
Continuação
1a iteração
3 0
1 2
(2)
x
=
3 0 1
1 2 1
0 −1
0
0
(
→
(2)
x1 =
(2)
x2 =
0
0
+
1
1
1
3 = 0.3333
1−1×0.3333
=
2
=
1
1
0.3334
C.P.
0.3333
0 (2)
0.3334 − 0 x − x(1) 0.3334
∞
=
=
= 1 ≮ 0.1
x(2) 0.3333 0.3334
0.3334 ∞
Como o critério não se verifica deve-se continuar com a próxima iteração.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
62 / 216
Resolução de sistemas não lineares
Contents
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Introdução
Erros
Zeros de funções
Resolução de sistemas lineares
Resolução de sistemas não lineares
Interpolação polinomial
Mínimos quadrados lineares
Mínimos quadrados não lineares
Integração numérica
Optimização não linear sem restrições
Método de Davies Swann e Campey
Método de Nelder Mead
Método de Segurança de Newton
Método quasi-Newton
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
63 / 216
Resolução de sistemas não lineares
Sistemas de equações não lineares
Forma geral do problema


 f1 (x1 , x2 , . . . , xn ) = 0

f2 (x1 , x2 , . . . , xn ) = 0
...



fn (x1 , x2 , . . . , xn ) = 0
em que f = (f1 , f2 , . . . , fn )T é um vector de funções pelo menos uma vez
continuamente diferenciáveis.
Pretende-se determinar um x∗ = (x∗1 , x∗2 , . . . , x∗n )T tal que
f (x∗ ) = (0, 0, . . . , 0)T = 0.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
64 / 216
Resolução de sistemas não lineares
Fórmula de Taylor a uma dimensão
Se f : R → R for l + 1 vezes diferenciável temos que
f (x) =
l
X
f (k) (a)
k=0
k!
(x − a)k +
f (l+1) (ξ)
(x − a)l+1
(l + 1)!
com ξ ∈ [a, x] e a função definida em torno de a.
Exemplo: Valor da função em x(k+1) definido em torno de x(k) .
f (x(k+1) ) ≈ f (x(k) ) + f 0 (x(k) )(x(k+1) − x(k) )
ou seja, quando se pretende que f (x(k+1) ) = 0 vem
x(k+1) = x(k) −
A. Ismael F. Vaz (UMinho)
f (x(k) )
f 0 (x(k) )
Eq. it. do método de Newton
MN C
2007/2008
65 / 216
Resolução de sistemas não lineares
Fórmula de Taylor para dimensão n
Se f : Rn → Rn temos que
f (x(k+1) ) ≈ f (x(k) )+

(k)
∂f1 (x )
∂x1
∂f2 (x(k) )
∂x1
∂f1 (x(k) )
∂x2
∂f2 (x(k) )
∂x2
∂fn (x(k) )
∂x1
∂fn (x(k) )
∂x2



 ...

...
∂f1 (x(k) )
∂xn
∂f2 (x(k) )
∂xn
...
∂fn (x(k) )
∂xn
...






(k+1)
(k)
x1
− x1
(k+1)
(k)
x2
− x2
...
(k+1)
(k)
xn
− xn





e deduzindo a equação iterativa do método de Newton para sistemas de
equações não lineares temos,
(k)
(k+1)
J(x(k) )∆(k)
= x(k) + ∆(k)
x = −f (x ), com x
x
em que J(x) é o Jacobiano da função.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
66 / 216
Resolução de sistemas não lineares
Critério de paragem
(k)
k∆x k2
kx(k+1) − x(k) k2
= (k+1) ≤ 1
(k+1)
kx
k2
kx
k2
Se kx(k+1) k2 é zero, ou próximo de zero, então o critério deve ser
(k)
k∆x k2 ≤ 1
kf (x(k+1) )k2 ≤ 2
Número máximo de iterações.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
67 / 216
Resolução de sistemas não lineares
Propriedades
Convergência local quadrática.
Determina a solução de um sistema linear numa única iteração.
Inconveniente do cálculo do Jacobiano. (Também existe um método
da secante para sistemas.)
O método falha quando o Jacobiano é singular (nova aproximação
inicial).
O método de Newton não converge necessariamente para a solução
mais próxima da aproximação inicial.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
68 / 216
Resolução de sistemas não lineares
Um exemplo
Considere-se o seguinte sistema não linear
3x2 + 2y 2 = 35
6x
4y
cujo Jacobiano é J(x, y) =
4x2 − 3y 2 = 24
8x −6y
Temos
f (x, y) =
3x2 + 2y 2 − 35
4x2 − 3y 2 − 24
e a aproximação inicial é (x, y)(1) = (2.5, 2). Pretende-se determinar a
solução com uma precisão de 1 = 2 = 10−1 .
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
69 / 216
Resolução de sistemas não lineares
Continuação
1a iteração
15
8
J((x, y) ) = J(2.5, 2) =
20 −12
−8.25
(1)
f ((x, y) ) = f (2.5, 2) =
−11
(1)
15
8 8.25
20 −12
11
20 −12 11
→
→
20 −12
11
15
8 8.25
0
17 0
0.55
(1)
(1)
→ ∆(x,y) =
e (x, y)(2) = (x, y)(1) + ∆(x,y) = (3.05, 2)T
0
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
70 / 216
Resolução de sistemas não lineares
Continuação
C.P.
f (x, y)(2) ∞
0.9075 = 1.21 2 = 0.1
=
1.21 ∞
Como o critério não se verifica faz-se uma nova iteração.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
71 / 216
Interpolação polinomial
Contents
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Introdução
Erros
Zeros de funções
Resolução de sistemas lineares
Resolução de sistemas não lineares
Interpolação polinomial
Mínimos quadrados lineares
Mínimos quadrados não lineares
Integração numérica
Optimização não linear sem restrições
Método de Davies Swann e Campey
Método de Nelder Mead
Método de Segurança de Newton
Método quasi-Newton
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
72 / 216
Interpolação polinomial
Motivação
Pretende-se determinar uma função aproximação que descreva o melhor
possível o comportamento de um conjunto de pontos (x0 , f0 ), (x1 , f1 ),
. . . , (xm , fm ).
Este conjunto de pontos pode ter sido obtido de:
observações de uma experiência (função desconhecida);
uma função complexa cujo cálculo é difícil (função pode ser
conhecida).
A função aproximação server para:
formular um modelo matemático que descreve o processo em causa;
obter valores da função em pontos que são desconhecidos.
Problema: Como implementar a função sin(x) num microcontrolador?
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
73 / 216
Interpolação polinomial
Continuação
Pretende-se então, dado um conjunto de pontos (xi , fi ), i = 1, . . . , m,
determinar uma função aproximação p(x) que melhor descreve o
comportamento dos dados, de acordo com uma certa medida.
No nosso caso vamos apenas considerar funções aproximação polinomiais,
i.e., pn (x) é um polinómio interpolador de grau n.
Para construirmos o polinómio interpolador de Newton são necessárias as
diferenças divididas.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
74 / 216
Interpolação polinomial
Diferenças divididas
com espaçamento não constante
Considere-se uma função f (x) tabelada em m + 1 pontos x0 , x1 , . . . , xm
não igualmente espaçados.
Diferenças divididas de primeira ordem são
[xj , xj+1 ] =
fj − fj+1
j = 0, . . . , m − 1
xj − xj+1
onde fj = f (xj ).
A diferença dividida de primeira ordem corresponde ao declive da recta que
passa em (xj , fj ) e (xj+1 , fj+1 ).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
75 / 216
Interpolação polinomial
Continuação
As diferenças divididas de segunda ordem são
[xj , xj+1 , xj+2 ] =
[xj , xj+1 ] − [xj+1 , xj+2 ]
,
xj − xj+2
j = 0, . . . , m − 2.
As diferenças divididas de ordem n são
[xj , xj+1 , . . . , xj+n ] =
[xj , xj+1 , . . . , xj+n−1 ] − [xj+1 , xj+2 , . . . , xj+n ]
xj − xj+n
para j = 0, . . . , m − n.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
76 / 216
Interpolação polinomial
Tabela das diferenças divididas
x0
f0
x1
f1
[x0 , x1 ]
[x0 , x1 , x2 ]
[x1 , x2 ]
x2
f2
...
xm−2
...
fm−2
xm−1
fm−1
[x0 , x1 , x2 , x3 ]
[x1 , x2 , x3 ]
[x2 , x3 ]
[x1 , x2 , x3 , x4 ]
[x0 , . . . , xm−1 , xm ]
[xm−3 , xm−2 , xm−1 ]
[xm−2 , xm−1 ]
[xm−3 , xm−2 , xm−1 , xm ]
[xm−2 , xm−1 , xm ]
[xm−1 , xm ]
xm
fm
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
77 / 216
Interpolação polinomial
Exemplo
xi
1
fi
2
3
3
4
4
dd1
dd2
dd3
dd4
dd5
0.5000
0.1667
−0.0667
1.0000
−0.1667
0.5000
6
5
6
−0.0043
−0.0139
0.1667
−0.0139
1.0000
7
0.0250
0.0833
0.0833
1.3333
10 10
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
78 / 216
Interpolação polinomial
Propriedades das diferenças divididas
Simétrica nos argumentos, i.e., é independente da ordem dos argumentos;
Exemplo
xi
6
fi
5
7
6
xi
7
fi
6
1.0000
1.3333
0.0833
1.3333
10 10
A. Ismael F. Vaz (UMinho)
0.0833
10 10
1.25
6
MN C
5
2007/2008
79 / 216
Interpolação polinomial
Propriedades das diferenças divididas
Se fj = uj + vj para valores de xj , j = 0, . . . , m então a tabela das DD de
f é igual à soma das tabelas das DD de u e v.
Exemplo: f (x) = sin(x) + ex , u(x) = sin(x) e v(x) = ex .
xi
1
ui
0.8415
2
0.9093
xi
1
vi
2.7183
2
7.3891
0.0678
4.6708
−0.4180
−0.7682
3
4.0128
12.6964
3
0.1411
xi
1
fi
3.5598
2
8.2984
20.0855
4.7386
3.5948
11.9282
3
A. Ismael F. Vaz (UMinho)
20.2266
MN C
2007/2008
80 / 216
Interpolação polinomial
Propriedades das diferenças divididas
A diferença dividida de cf (x), com c constante, é igual ao produto da
diferença dividida de f (x) por c.
Exemplo: f (x) = sin(x), cf (x) = 2 sin(x)
fi
xi
1 0.8415
xi
2fi
1 1.6830
0.0678
2
0.1356
−0.4180
0.9093
2
−0.7682
3
−1.5364
3
0.1411
A. Ismael F. Vaz (UMinho)
−0.8360
1.8186
MN C
0.2822
2007/2008
81 / 216
Interpolação polinomial
Propriedades das diferenças divididas
As diferenças divididas de ordem n da função xn são iguais a 1 e as de
ordem r > n são nulas. Como consequência as diferenças divididas de
ordem n de um polinómio de ordem n são iguais e diferentes de zero.
Exemplo: f (x) = x2 + 3x + 1
xi fi dd1 dd2 dd3 dd4
−1 −1
2
0
1
1
4
0
1
5
1
0
6
0
2
11
1
8
3
19
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
82 / 216
Interpolação polinomial
Fórmula interpoladora de Newton
Das definições das diferenças divididas pode-se concluir que
f (x) = f0 + (x − x0 )[x0 , x] = f0 + (x − x0 )
f (x) − f0
x − x0
[x0 , x] = [x0 , x1 ] + (x − x1 )[x0 , x1 , x]
[x0 , x1 , x] = [x0 , x1 , x2 ] + (x − x2 )[x0 , x1 , x2 , x]
...
[x0 , x1 , . . . , xn−1 , x] = [x0 , x1 , . . . , xn−1 , xn ] + (x − xn )[x0 , x1 , . . . , xn−1 , xn , x]
...
deduzindo-se a fórmula interpoladora de Newton
f (x) = f0 + (x − x0 )[x0 , x1 ] + (x − x0 )(x − x1 )[x0 , x1 , x2 ] + · · · +
(x − x0 ) . . . (x − xn−1 )[x0 , x1 , . . . , xn ] + · · ·
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
83 / 216
Interpolação polinomial
Polinómio interpolador de Newton
O polinómio interpolador de grau n obtém-se usado apenas n + 1 termos
da fórmula interpoladora de Newton,
pn (x) = f0 + (x − x0 )[x0 , x1 ] + (x − x0 )(x − x1 )[x0 , x1 , x2 ] + · · · +
(x − x0 ) . . . (x − xn−1 )[x0 , x1 , . . . , xn ]
e temos que
(n+1)
R(x) = f (x) − pn (x) = (x − x0 )(x − x1 ) . . . (x − xn−1 )(x − xn ) f (n+1)!(ξ) ,
ξ ∈ [x0 , xn ].
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
84 / 216
Interpolação polinomial
Diferenças divididas e derivadas
Da dedução da fórmula do erro de truncatura temos que
[x0 , x1 , . . . , xn ] =
f (n) (ξ)
, ξ ∈ [x0 , xn ],
n!
ou seja, as diferenças divididas de primeira ordem são aproximações as
primeiras derivadas e a diferença dividida de ordem n é uma aproximação à
derivada de ordem n da função sobre n!.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
85 / 216
Interpolação polinomial
Determinação do polinómio interpolador
Em geral temos que m > n. Para construirmos o polinómio interpolador de
grau n são necessários n + 1 pontos. A escolha dos pontos está relacionada
com o valor de x̄ para o qual se pretende obter uma estimativa da função
f (x̄).
A escolha dos pontos deve obedecer as seguintes regras:
os pontos xj e xj+1 em que xj < x̄ < xj+1 devem ser incluídos.
os restantes, até formar os n + 1 necessários, são aqueles que estão
mais próximos de x̄.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
86 / 216
Interpolação polinomial
Exemplo
Considere-se a seguinte tabela de pontos
i 0 1 2 3 4 5
xi 1 3 4 6 7 10
fi 2 3 4 5 6 10
pretende-se obter uma estimativa de f (8) através usando uma interpolação
quadrática (polinómio de colocação de grau 2).
Precisamos de 3 pontos para construir o polinómio de grau 2. x4 e x5
devem ser incluídos, uma vez que x4 < 8 < x5 , e o restante será o x3 .
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
87 / 216
Interpolação polinomial
Continuação
Construindo a tabela das diferenças divididas temos que
xi
6
fi
5
7
6
1.0000
0.0833
1.3333
10 10
e p2 (x) = 5 + (x − 6) × 1 + (x − 6)(x − 7) × 0.0833, ficando
f (8) ≈ p2 (8) = 5 + (8 − 6) × 1 + (8 − 6)(8 − 7) × 0.0833 = 7.1666.
Nota: x0 = 6, x1 = 7, e x2 = 10 para efeitos do cálculo do polinómio.
Sendo o polinómio interpolador único qualquer combinação de pontos
resulta no mesmo polinómio.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
88 / 216
Interpolação polinomial
Continuação
xi
7
fi
6
1.3333
10 10
0.0833
1.25
6
5
e p2 (x) = 6 + (x − 7) × 1.3333 + (x − 7)(x − 10) × 0.0833, ficando
f (8) ≈ p2 (8) = 6 + (8 − 7) × 1.333 + (8 − 7)(8 − 10) × 0.0833 = 7.1667.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
89 / 216
Interpolação polinomial
Cálculo do majorante do erro absoluto
f (3) (ξ) ET (x) = (x − x0 )(x − x1 )(x − x2 )
, ξ ∈ [6, 10]
3! Como necessitámos de uma estimativa para f (3) (ξ) e a função f (x) é
desconhecida vamos usar as diferenças divididas para a obter.
Com os pontos usados na construção do polinómio não é possível obter
uma diferença dividida de ordem 3 e por isso vamos acrescentar mais um
ponto à tabela anterior.
É indiferente inserir o ponto no início ou no final da tabela, uma vez que o
valor de dd3 será o mesmo.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
90 / 216
Interpolação polinomial
Continuação
xi
4
fi
4
6
5
7
6
0.5000
0.1667
−0.0139
1.0000
0.0833
1.3333
10 10
ET (8) = |(8 − 6)(8 − 7)(8 − 10) × (−0.0139)| = 0.0556
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
91 / 216
Mínimos quadrados lineares
Contents
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Introdução
Erros
Zeros de funções
Resolução de sistemas lineares
Resolução de sistemas não lineares
Interpolação polinomial
Mínimos quadrados lineares
Mínimos quadrados não lineares
Integração numérica
Optimização não linear sem restrições
Método de Davies Swann e Campey
Método de Nelder Mead
Método de Segurança de Newton
Método quasi-Newton
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
92 / 216
Mínimos quadrados lineares
Mínimos quadrados lineares
Motivação
Os mínimos quadrados são usados quando os dados obtidos para uma
determinada função f (x) estão afectados de erros (ou ruídos). Neste caso
não faz muito sentido usar uma interpolação, mas sim construir uma
função que reflicta, na generalidade, o comportamento dos dados.
Exemplo
Suponhamos que se pretende estimar o consumo de um automóvel em
função da velocidade. Através da realização de várias experiências
chegou-se aos seguintes valores:
xi (velocidade - km/h)
fi (consumo l/100km)
A. Ismael F. Vaz (UMinho)
20
5.5
40
5.6
MN C
50
5.7
60
5.9
60
5.85
70
6.1
80
7.5
2007/2008
93 / 216
Mínimos quadrados lineares
Cont.
Seria correcto usar um polinómio interpolador para modelar a função f (x)?
7.4
7.2
Consumo (l/100km)
7
6.8
6.6
6.4
6.2
6
5.8
5.6
5.4
20
30
40
50
60
Velocidade (km/h)
70
80
O mais correcto seria determinar um polinómio de grau 2 (ou c1 + c2 ex ?)
que melhor se aproxima-se dos dados da tabela.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
94 / 216
Mínimos quadrados lineares
Forma geral do problema - Caso discreto
Dado um conjunto de valores (xi , fi ), i = 1, . . . , m, pretende-se determinar
um modelo M (x) que aproxima o melhor possível a função dada, ou seja,
minimizarhf − M (x), f − M (x)i
em que
hg(x), h(x)i =
m
X
ω(xi )g(xi )h(xi ).
i=1
Pretende-se então
minimizar
m
X
(fi − M (xi ))2
i=1
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
95 / 216
Mínimos quadrados lineares
Caso polinomial - estabilidade numérica
No caso polinomial, ou seja, no caso em que M (x) = pn (x) e é usado o
conjunto dos polinómios base {1, x, x2 , . . . , xn−1 , xn } na definição do
modelo, temos que
M (x) = pn (x) = c0 + c1 x + c2 x2 + · · · + cn−1 xn−1 + cn xn
e a resolução do problema
min
m
X
(fi − pn (xi ))2
i=1
resulta num sistema linear mal condicionado.
A introdução dos polinómios ortogonais é suficiente para resolver o
problema de mau condicionamento.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
96 / 216
Mínimos quadrados lineares
Polinómios ortogonais
Definições:
Duas funções g(x) e h(x) dizem-se ortogonais se o seu produto
escalar for nulo, i.e., se hg(x), h(x)i = 0.
A sequência P0 (x), P1 (x), . . . , Pn (x) forma uma sequência de n + 1
polinómios ortogonais se os polinómios Pi (x), i = 0, . . . , n, forem
ortogonais dois a dois e cada Pi (x) for um polinómio de grau igual a i.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
97 / 216
Mínimos quadrados lineares
Propriedades dos polinómios ortogonais
Os polinómios ortogonais Pn (x) são também linearmente
independentes. Assim, qualquer polinómio pn (x), de grau n, pode ser
expresso na seguinte forma única
pn (x) = c0 P0 (x) + c1 P1 (x) + · · · + cn Pn (x),
como uma combinação linear de uma sequência de polinómios
ortogonais.
Os polinómios Pn (x) têm zeros reais e distintos que pertencem a
[x1 , xm ].
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
98 / 216
Mínimos quadrados lineares
Determinação dos polinómios ortogonais
Pi+1 (x) = Ai (x − Bi )Pi (x) − Ci Pi−1 (x), para i = 0, . . . , n − 1
sendo P−1 (x) = 0, P0 (x) = 1 e os coeficientes da relação
Ai = 1, para todo o i,
hxPi (x), Pi (x)i
Bi =
, para todo o i,
hPi (x), Pi (x)i
hPi (x), Pi (x)i
C0 = 0 e Ci =
para i > 0.
hPi−1 (x), Pi−1 (x)i
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
99 / 216
Mínimos quadrados lineares
Determinação dos coeficientes
Pm
Pm
fi P1 (xi )
i=1 fi P0 (xi )
P
c0 =
, c1 = Pi=1
,...,
m
m
2
2
P
(x
)
i=1 0 i
i=1 P1 (xi )
P
m
fi Pn (xi )
cn = Pi=1
m
2
i=1 Pn (xi )
sendo o modelo
pn (x) = c0 P0 (x) + c1 P1 (x) + · · · + cn Pn (x).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
100 / 216
Mínimos quadrados lineares
Exemplo
Determinação da recta (polinómio de grau 1) que melhor se ajusta (no
sentido dos mínimos quadrados) aos dados da tabela
xi
fi
20
5.5
40
5.6
50
5.7
60
5.9
60
5.85
70
6.1
80
7.5
O modelo a determinar será p1 (x) = c0 P0 (x) + c1 P1 (x). Em primeiro lugar
determina-se os polinómios ortogonais. P0 (x) = 1 por definição e
P1 (x) = A0 (x − B0 )P0 (x) − C0 P−1 (x)
com A0 = 1, C0 = 0, P−1 (x) = 0 e
P7
xi P02 (xi )
hxP0 (x), P0 (x)i
380
B0 =
= Pi=1
=
= 54.285714
7
2
hP0 (x), P0 (x)i
7
i=1 P0 (xi )
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
101 / 216
Mínimos quadrados lineares
Cont.
Temos então que p1 (x) = c0 + c1 (x − 54.285714) e falta determinar os
coeficientes.
P7
fi P0 (xi )
42.15
= 6.021429
c0 = Pi=1
=
7
2
7
i=1 P0 (xi )
P7
fi P1 (xi ) 5.5(20 − 54.285714) · · · 7.5(80 − 54.285714)
c1 = Pi=1
=
7
2
(20 − 54.285714)2 · · · (80 − 54.285714)2
i=1 P1 (xi )
62.571441
=
= 0.026386 (0.026506 CoNum)
2371.4286
ficando p1 (x) = 6.021429 + 0.026386(x − 54.285714)
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
102 / 216
Mínimos quadrados lineares
Exemplo - Interpretação gráfica
8
7.5
p2(x)
7
6.5
6
p1(x)
5.5
5
20
30
40
50
60
70
80
p2 (x) = 6.021429 + 0.026506(x − 54.285714)+
0.000946 ∗ ((x − 44.991394)(x − 54285714) − 338.775510)
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
103 / 216
Mínimos quadrados lineares
Modelo linear não polinomial - Caso discreto
Pretende-se determinar o modelo, linear nos coeficientes, que melhor se
aproxima (no sentido dos mínimos quadrados) à função f (x). Sendo o
modelo linear nos coeficientes pode-se escrever como
M (x) = c1 φ1 (x) + c2 φ2 (x) + · · · + cn φn (x)
Exemplo
M (x) = c1 + c2 ex
em que φ1 (x) = 1 e φ2 (x) = ex .
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
104 / 216
Mínimos quadrados lineares
Dedução das equações normais
Pretende-se
minimizarS ≡
m
X
(fi − c1 φ1 (xi ) − · · · − cn φn (xi ))2
i=1
e derivando S em ordem aos ci , i = 1, . . . , n e igualando a zero, obtém-se
m
X
∂S
=
(fi − c1 φ1 (xi ) − · · · − cn φn (xi )) φ1 (xi ) = 0
∂c1
i=1
···
m
X
∂S
=
(fi − c1 φ1 (xi ) − · · · − cn φn (xi )) φn (xi ) = 0
∂cn
i=1
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
105 / 216
Mínimos quadrados lineares
Sistema das equações normais
Na forma matricial vem
0X
m
φ1 (xi )φ1 (xi )
m
X
φ1 (xi )φ2 (xi )
B
B i=1
i=1
B
m
m
BX
X
B
φ2 (xi )φ1 (xi )
φ2 (xi )φ2 (xi )
B
B
i=1
B i=1
B
B
......
B
BX
m
m
X
@
φn (xi )φ1 (xi )
φn (xi )φ2 (xi )
i=1
i=1
A. Ismael F. Vaz (UMinho)
1
0X
1
m
f
φ
(x
)
φ1 (xi )φn (xi ) C
i
1
i
C
B
C
C 0 1 B i=1
i=1
C
B
C c1
m
m
C
BX
C
X
C
CB C B
fi φ2 (xi ) C
...
φ2 (xi )φn (xi ) C B c2 C B
C
CB C = B
i=1
C
C @ ...A B i=1
B
C
C
B ...
C
C
......
B
C
C cn
B
C
C
m
m
X
A
A
@X
fi φn (xi )
...
φn (xi )φn (xi )
...
m
X
i=1
MN C
i=1
2007/2008
106 / 216
Mínimos quadrados lineares
Exemplo
Consideremos o exemplo já apresentado
xi (velocidade - km/h)
fi (consumo l/100km)
20
5.5
40
5.6
50
5.7
60
5.9
60
5.85
70
6.1
80
7.5
x
pretendendo-se ajustar o modelo M (x) = c1 + c2 e 20 à tabela dada. Temos
x
que φ1 (x) = 1 e φ2 (x) = e 20 , resolvendo o sistema linear (EGPP)
!
xi
P7
P7
P7
1
e 20
fi
i=1
i=1
i=1
xi
xi
xi
P7
P7
P7
20
10
20
i=1 e
i=1 e
i=1 fi e
vem c1 = 5.231132, c2 = 0.036838 e consequentemente
x
M (x) = 5.231132 + 0.036838e 20 .
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
107 / 216
Mínimos quadrados lineares
Exemplo - Gráfico
7.5
Consumo (l/100km)
7
6.5
6
5.5
5
10
20
A. Ismael F. Vaz (UMinho)
30
40
50
60
Velocidade (km/h)
MN C
70
80
90
2007/2008
108 / 216
Mínimos quadrados lineares
Resíduo
O resíduo é determinado por
m
X
(fi − c1 φ1 (xi ) − · · · − cn φn (xi ))2 .
i=1
No caso do polinómio de grau um, p1 (x), temos um resíduo de 1.123193.
Para o polinómio de grau 2 temos um resíduo de 0.302736 e no modelo
linear um resíduo de 0.247494.
O melhor modelo é o linear, porque tem menor resíduo.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
109 / 216
Mínimos quadrados lineares
Exemplo - Gráficos
7.5
7
Consumo (l/100km)
p1(x)
6.5
6
p2(x)
5.5
M(x)
5
10
20
A. Ismael F. Vaz (UMinho)
30
40
50
60
Velocidade (km/h)
MN C
70
80
90
2007/2008
110 / 216
Mínimos quadrados não lineares
Contents
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Introdução
Erros
Zeros de funções
Resolução de sistemas lineares
Resolução de sistemas não lineares
Interpolação polinomial
Mínimos quadrados lineares
Mínimos quadrados não lineares
Integração numérica
Optimização não linear sem restrições
Método de Davies Swann e Campey
Método de Nelder Mead
Método de Segurança de Newton
Método quasi-Newton
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
111 / 216
Mínimos quadrados não lineares
Forma geral do problema - Caso discreto
Dado um conjunto de valores (xi , fi ), i = 1, . . . , m, pretende-se determinar
um modelo M (x) que aproxima o melhor possível a função dada, ou seja,
minimizarS =
m
X
(fi − M (xi ))2
i=1
em que o modelo M (x) é não linear nos coeficientes.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
112 / 216
Mínimos quadrados não lineares
Exemplo
Suponhamos que se pretende estimar o consumo de um automóvel em
função da velocidade. Através da realização de várias experiências
chegou-se aos seguintes valores:
xi (velocidade - km/h)
fi (consumo l/100km)
20
5.5
50
5.7
60
5.9
80
7.5
Pretende-se ajustar o modelo
M (x) = c1 + ec2 x
aos pontos da tabela, no sentido dos mínimos quadrados.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
113 / 216
Mínimos quadrados não lineares
Dedução das equações normais
Pretende-se
minimizarS ≡
m
X
(fi − M (xi ))2
i=1
e derivando S em ordem aos ci , i = 1, . . . , n e igualando a zero, obtém-se
m
X
∂M (xi )
∂S
=−
(fi − M (xi ))
=0
∂c1
∂c1
i=1
···
m
X
∂S
∂M (xi )
=−
(fi − M (xi ))
=0
∂cn
∂cn
i=1
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
114 / 216
Mínimos quadrados não lineares
Sistema das equações normais
Uma vez que M (x) é não linear nos coeficiente o sistema resultante é
também não linear nos coeficientes

m
X

∂M (xi )

 F1 (c) = −
(fi − M (xi ))
=0


∂c1


i=1

···


m

X

∂M (xi )


F
(c)
=
−
(fi − M (xi ))
=0

 n
∂cn
i=1
e vamos aplicar o método de Newton para sistemas não lineares.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
115 / 216
Mínimos quadrados não lineares
Método de Newton
A equação iterativa do método de Newton é
J(c)∆c = −F (c)
com ck+1 = ck + ∆c e em que o cada elemento do Jacobiano é
m
Jjk
X
∂Fj
=
=
∂ck
i=1
∂M (xi ) ∂M (xi )
∂ 2 M (xi )
− (fi − M (xi ))
∂ck
∂cj
∂ck ∂cj
,
para j, k = 1, . . . , n.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
116 / 216
Mínimos quadrados não lineares
Método de Gauss-Newton
Como, próximo da solução, se espera que
(fi − M (xi ))
seja próximo de zero, o método de Gauss-Newton despreza o segundo
termo dos elementos do Jacobiano, tomando como aproximação ao
Jacobiano a matriz A cujos elementos são
m
X
∂Fj
≈ Ajk =
∂ck
i=1
∂M (xi ) ∂M (xi )
∂ck
∂cj
,
para j, k = 1, . . . , n.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
117 / 216
Mínimos quadrados não lineares
Resíduo
O resíduo é determinado por
S=
m
X
(fi − M (xi ))2 ,
i=1
sendo um resultado obtido em cada iteração do algoritmo de
Gauss-Newton.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
118 / 216
Mínimos quadrados não lineares
Exemplo - Uma iteração
Considere novamente o modelo M (x) = c1 + ec2 x que se pretende ajustar
aos pontos da tabela (c(1) = (3.7, 0.015)T e 1 = 2 = 0.1)
xi (velocidade - km/h)
fi (consumo l/100km)
20
5.5
50
5.7
60
5.9
80
7.5
Temos que
∂M (x)
∂M (x)
=1 e
= xec2 x
∂c1
∂c2
e consequentemente


4
X
c2 xi
−

(fi − c1 − e
)


 i=1

F (c) = 
.
4
 X

−
(fi − c1 − ec2 xi ) xi ec2 xi 
i=1
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
119 / 216
Mínimos quadrados não lineares
Exemplo - Cont.
A matriz aproximação do Jacobiano é
2
 P ∂M (xi )
4
i=1
∂c1
A(c) =  P
∂M (xi ) ∂M (xi )
4
i=1
∂c2
∂c1
P4
1
A(c) = Pi=1
4
c 2 xi
i=1 xi e
A. Ismael F. Vaz (UMinho)
MN C
∂M (xi ) ∂M (xi )
i=1 ∂c1
∂c
2 2
P4
∂M (xi )
i=1
∂c2
P4


P4
xi ec2 xi
Pi=1
4
c2 xi )2
i=1 (xi e
2007/2008
120 / 216
Mínimos quadrados não lineares
Exemplo - 1a iteração
c(1) = (3.7, 0.015)T
2
∂M (xi )
∂c2
∂M (xi )
∂c2
xi
fi
M (xi )
20
50
60
80
5.5
5.7
5.9
7.5
5.0499 26.9972
728.8475
5.8170 105.8500 11204.2227
6.1596 147.5762 21778.7309
7.0201 265.6094 70548.3288
546.0328 104260.1299
i)
− (fi − M (xi )) ∂M∂c(x
2
−12.1514
12.3845
38.3108
−127.4659
−88.9220
A. Ismael F. Vaz (UMinho)
MN C
− (fi − M (xi ))
−0.4501
0.1170
0.2596
−0.4799
−0.5534
(fi − M (xi ))2
0.2026
0.0137
0.0674
0.2303
0.5140
2007/2008
121 / 216
Mínimos quadrados não lineares
Cont.
Temos então que S (1) = 0.5140 e o seguinte sistema linear para resolver
(por EGPP)
0.5534
0.0769
4
546.0328
→ ∆c =
546.0328 104260.1299 88.9220
0.0005
e consequentemente
(2)
c
(1)
=c
+ ∆c =
3.7
0.015
+
0.0769
0.0005
=
3.7769
0.0155
Falta-nos confirmar que há decréscimo da função objectivo, i.e.,
S (2) < S (1) e o critério de paragem.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
122 / 216
Mínimos quadrados não lineares
Cont.
xi
20
50
60
80
fi
5.5
5.7
5.9
7.5
M (xi )
5.1403
5.9475
6.3114
7.2325
c(2) = (3.7769, 0.0155)T
∂M (xi )
i)
− (fi − M (xi )) − (fi − M (xi )) ∂M∂c(x
∂c2
2
27.2685
−0.3597
−9.8085
108.5296
0.2475
26.8611
152.0706
−0.4114
−62.5618
276.4491
0.2675
73.9501
−0.2561
28.4409
(fi − M (xi ))2
0.1294
0.0613
0.1692
0.0716
0.4315
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
123 / 216
Mínimos quadrados não lineares
Critério de paragem
Temos então que 0.4315 = S (2) < S (1) = 0.5140,
−0.2561
(2)
(2) F (c ) =
e F (c ) = 28.4420 > 2 = 0.01
28.4409
por outro lado também temos que
0.0769 0.0005 k∆c k
0.0769
= =
= 0.0204 > 1 = 0.01
c(2) 3.7769 3.7769
0.0155 e temos que passar para a próxima iteração.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
124 / 216
Mínimos quadrados não lineares
Gráfico com c(2)
O resíduo em c(2) é S (2) = 0.4314.
7.5
Consumo (l/100km)
7
6.5
6
5.5
5
10
A. Ismael F. Vaz (UMinho)
20
30
40
50
60
Velocidade (km/h)
MN C
70
80
90
2007/2008
125 / 216
Integração numérica
Contents
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Introdução
Erros
Zeros de funções
Resolução de sistemas lineares
Resolução de sistemas não lineares
Interpolação polinomial
Mínimos quadrados lineares
Mínimos quadrados não lineares
Integração numérica
Optimização não linear sem restrições
Método de Davies Swann e Campey
Método de Nelder Mead
Método de Segurança de Newton
Método quasi-Newton
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
126 / 216
Integração numérica
Forma geral do problema
Pretende-se calcular uma aproximação ao integral definido
Z
I=
b
f (x)dx
a
com a e b constantes.
A técnica a utilizar consiste na aproximação da função f (x) por um
polinómio interpolador, pn (x), e posteriormente aproxima-se I por
Rb
a pn (x)dx.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
127 / 216
Integração numérica
Motivação para a integração numérica
As situações mais frequentes onde se torna necessário calcular uma
aproximação ao integral definido são:
a função primitiva não pode vir expressa em termos de funções
elementares;
a expressão da primitiva é muito complexa;
a função integranda é conhecida apenas num conjunto discreto de
pontos.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
128 / 216
Integração numérica
Fórmulas com intervalos de amplitudes constantes
Fórmulas Newton-Cotes (simples)
As fórmulas simples são aplicadas a um intervalo que contém o número
mínimo de pontos para a interpolação entre a e b.
Regra do Trapézio (n = 1)
Z
b
f (x)dx ≈
a
A. Ismael F. Vaz (UMinho)
b−a
[f (a) + f (b)]
2
MN C
2007/2008
129 / 216
Integração numérica
Cont.
Regra de Simpson (n = 2)
b
Z
f (x)dx ≈
a
Regra dos
Z
a
b
3
8
b−a
a+b
f (a) + 4f
+ f (b)
6
2
(n = 3, regra de Newton dos três oitavos)
b−a
2a + b
a + 2b
f (x)dx ≈
f (a) + 3f
+ 3f
+ f (b)
8
3
3
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
130 / 216
Integração numérica
Interpretação geométrica - Trapézio
1.4
1.2
p1(x)
1
sin(x)
sin(x)
0.8
0.6
I
0.4
0.2
0
0
0.5
1
1.5
2
2.5
3
x
sen(1) +
A. Ismael F. Vaz (UMinho)
sen(1)−sen(1.5)
1−1.5
MN C
3.5
p1 (x) =
(x − 1)
2007/2008
131 / 216
Integração numérica
Erro de truncatura
As fórmulas do erro de truncatura são deduzidas a partir da fórmula para o
erro da interpolação polinomial.
Regra do Trapézio
ETT = −
(b − a)3 00
f (ξ), ξ ∈ [a, b]
12
Uma vez que ξ é um valor desconhecido calcula-se um majorante do erro
absoluto, através da expressão
(b − a)3 −
M , em que M ≥ max f 00 (ξ)
12
ξ∈[a,b]
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
132 / 216
Integração numérica
Cont.
Regra de Simpson
Regra dos
ETS = −
(b − a)5 (iv)
f (ξ), ξ ∈ [a, b]
2880
ET 3 = −
(b − a)5 (iv)
f (ξ), ξ ∈ [a, b]
6480
3
8
8
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
133 / 216
Integração numérica
Fórmulas compostas - caso do Trapézio
Suponhamos que se pretende aplicar a regra do Trapézio a um conjunto de
igualmente espaçados, x0 , x1 , x2 , . . . , xn , para determinar
Rpontos,
xn
x0 f (x)dx (dados os valores de f (x0 ) = f0 , . . . , f (xn ) = fn ).
Como
Z xn
Z x1
Z x2
Z xn
f (x)dx +
f (x)dx + · · · +
f (x)dx =
f (x)dx
x0
x0
x1
xn −1
e
x1
x1 − x0
[f0 + f1 ] ,
2
Z xi+1x0
xi+1 − xi
f (x)dx ≈
[fi + fi+1 ]
2
xi
Z
f (x)dx ≈
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
134 / 216
Integração numérica
Cont.
Temos então que
Z xn
x1 − x0
x2 − x1
f (x)dx ≈
[f0 + f1 ] +
[f1 + f2 ] + . . .
2
2
x0
xn − xn−1
+
[fn−1 + fn ]
2
Usando o facto de que h = x1 − x0 = x2 − x1 = · · · = xn − xn−1 , e
colocando em evidencia o termo h2 vem que
Z xn
h
f (x)dx ≈ [f0 + 2f1 + 2f2 + · · · + 2fn−1 + fn ]
2
x0
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
135 / 216
Integração numérica
Cont.
As fórmulas compostas de Simpson e 83 são deduzidas de forma semelhante
à do Trapézio, mas no caso da regra de Simpson consideram-se múltiplos
de 2 intervalos e no caso dos 38 múltiplos de 3 intervalos.
Composta de Simpson
Z xn
h
f (x)dx ≈ [f0 + 4f1 + 2f2 + 4f3 + · · · + 2fn−2 + 4fn−1 + fn ]
3
x0
Composta dos
Z
3
8
xn
f (x)dx ≈
x0
3h
[f0 + 3f1 + 3f2 + 2f3 + · · · +
8
+ · · · + 2fn−3 + 3fn−2 + 3fn−1 + fn ]
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
136 / 216
Integração numérica
Erros de truncatura
As fórmulas dos erros de truncatura são deduzidas a partir da fórmula do
erro de truncatura simples.
Trapézio
ETT (h) = −
=−
n−1
X
i=0
h2
12
A. Ismael F. Vaz (UMinho)
n−1
h2 (b − a) X 00
(xi+1 − xi )3 00
f (ξi ) = −
f (ξi )
12
12 n
i=0
(b − a)f 00 (η), η ∈ [a, b].
MN C
2007/2008
137 / 216
Integração numérica
Cont.
Simpson
ETS (h) = −
h4
(b − a)f (iv) (η), η ∈ [a, b]
180
3
8
ET 3 (h) = −
8
A. Ismael F. Vaz (UMinho)
h4
(b − a)f (iv) (η), η ∈ [a, b]
80
MN C
2007/2008
138 / 216
Integração numérica
Intervalos de amplitudes variadas
Os intervalos de amplitudes variadas devem ser divididos em intervalos de
amplitudes constantes e posteriormente aplicar-se as fórmulas
Newton-Cotes.
Da análise das fórmulas do erro de truncatura conclui-se a aplicação das
seguintes regras (para valores de h ≤ 1):
quando o número de intervalos é par aplica-se a regra de Simpson;
quando o número de intervalos é múltiplo de 3 aplica-se a regra dos 38 ;
aplica-se a regra do trapézio nos restantes casos.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
139 / 216
Integração numérica
Exemplo [Edite Fernandes, 1998, adaptado]
Um carro inicia um percurso, num dia de Inverno, e um aparelho mede o
consumo de gasolina no instante em que percorreu x km. Os resultados
registados são:
x km
f (x) l/hm
0.00
0.260
1.25
0.208
2.50
0.172
3.75
0.145
5.00
0.126
6.50
0.113
8.00
0.104
9.50
0.097
10.00
0.092
em que f (x) designa o consumo no fim do percurso, naquele instante, em
l/km. Calcule o consumo total de gasolina no fim do percurso de 10km.
Z
10
f (x)dx ≈
0
1.25
[0.260 + 4 × 0.208 + 2 × 0.172 + 4 × 0.145 + 0.126]
3
3 × 1.5
[0.126 + 3 × 0.113 + 3 × 0.104 + 0.097]
+
8
0.5
+
[0.097 + 0.092]
2
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
140 / 216
Integração numérica
Erro absoluto de truncatura
É a soma dos majorantes das fórmulas aplicadas. Como a função f (x) é
desconhecida usamos uma tabela das diferenças divididas para as estimar.
1.254
ET = −
(5.00 − 0.00)0.000102 × 4!
180
1.54
+ −
(9.50 − 5.00)0.000016 × 4!
80
0.52
+ −
(10 − 9.5)(−0.002667) × 2!
12
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
141 / 216
Integração numérica
Cont.
x
0.00
f (x)
0.260
1.25
0.208
-0.041600
0.005120
-0.028800
2.50
0.172
-0.000597
0.002880
0.000102
-0.021600
3.75
0.145
-0.000085
0.002560
0.000007
-0.015200
5.00
0.126
-0.000046
0.002376
-0.000055
-0.008667
6.50
0.113
-0.000350
0.000889
0.000044
-0.006000
8.00
0.104
-0.000099
0.000444
0.000016
-0.004667
9.50
0.097
-0.000000
-0.002667
-0.010000
10.00
0.092
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
142 / 216
Integração numérica
Falta cálculo de espaçamento dado o majorante do erro de
truncatura
Pois...
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
143 / 216
Optimização não linear sem restrições
Contents
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Introdução
Erros
Zeros de funções
Resolução de sistemas lineares
Resolução de sistemas não lineares
Interpolação polinomial
Mínimos quadrados lineares
Mínimos quadrados não lineares
Integração numérica
Optimização não linear sem restrições
Método de Davies Swann e Campey
Método de Nelder Mead
Método de Segurança de Newton
Método quasi-Newton
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
144 / 216
Optimização não linear sem restrições
Forma geral do problema
A formulação matemática de um problema de optimização, na sua forma
mais geral, é
min f (x)
x∈Rn
s.a ci (x) = 0, i = 1, . . . , m
cj (x) ≥ 0, j = m + 1, . . . , t
onde f (x) é a função objectivo, ci (x) = 0 são as restrições de igualdade e
cj (x) ≥ são as restrições de desigualdade.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
145 / 216
Optimização não linear sem restrições
Equivalência entre problemas
O problema de optimização (maximização)
max g(x)
x∈Rn
s.a ci (x) = 0, i = 1, . . . , m
c̃j (x) ≤ 0, j = m + 1, . . . , t
é equivalente ao problema de optimização (minimização)
min f (x) ≡ −g(x)
x∈Rn
s.a ci (x) = 0, i = 1, . . . , m
cj (x) ≡ −c̃j (x) ≥ 0, j = m + 1, . . . , t
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
146 / 216
Optimização não linear sem restrições
Interpretação geométrica
6
4
2
f(x), −f(x)
f(x*)
0
x*
−2
−f(x*)
−4
−6
−1.5
−1
−0.5
0
0.5
x
1
1.5
2
2.5
f (x) = (x − 0.5)2 + 2
g(x) = −f (x) = −(x − 0.5)2 − 2
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
147 / 216
Optimização não linear sem restrições
Exemplo
Pretende-se determinar o volume máximo de uma lata (cilindro), fechada
nas duas extremidades, sabendo que a quantidade de chapa a usar é de
1000 cm2 . Sendo r o raio da tampa e h a altura da lata, uma possível
formulação do problema de optimização é
max πr2 h
(r,h)∈R2
s.a 2πr2 + 2πrh = 1000
que pode ser transformado no problema de minimização
min −πx21 x2
s.a
A. Ismael F. Vaz (UMinho)
x∈R2
2πx21
+ 2πx1 x2 = 1000
MN C
2007/2008
148 / 216
Optimização não linear sem restrições
Optimização sem restrições
Apenas iremos considerar problemas de minimização e sem restrições. A
sua formulação é pois
minn f (x).
x∈R
Classificação dos problemas (mais usuais)
Problemas unidimensionais (n = 1, ou seja, x ∈ R);
Problemas multidimensionais (n > 1, ou seja, x = (x1 , . . . , xn )T ∈ Rn );
Problemas de programação linear (f (x) e c(x) são funções lineares, i.e.,
f (x) = Ax, c(x) = Ax − b);
Problemas de programação quadrática (f (x) é uma função quadrática, i.e.,
f (x) = 12 xT Gx + dT x, e c(x) são funções lineares);
Problemas com limites simples (restrições nas variáveis do tipo al ≤ xl ≤ bl ,
l = 1, . . . , n);
Problemas de programação não linear (pelo menos uma das funções
envolvidas, f (x), c(x) é não linear).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
149 / 216
Optimização não linear sem restrições
Classificação de mínimos
x∗ é
minimizante local forte se ∃δ tal que f (x∗ ) < f (x̄), ∀x̄ ∈ Vδ (x∗ );
minimizante local fraco se ∃δ tal que f (x∗ ) ≤ f (x̄), ∀x̄ ∈ Vδ (x∗ );
minimizante global forte se f (x∗ ) < f (x̄), ∀x̄ ∈ Rn ;
minimizante global fraco se f (x∗ ) ≤ f (x̄), ∀x̄ ∈ Rn ;
Onde Vδ (x∗ ) é uma vizinhança de x∗ de raio δ (||x̄ − x∗ || < δ).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
150 / 216
Optimização não linear sem restrições
Mínimo global
Mínimo global forte
Função ilimitada
f (x∗ ) < f (x̄)
∀x̄ ∈ R
A. Ismael F. Vaz (UMinho)
Mínimo global fraco
f (x∗ ) ≤ f (x̄)
∀x̄ ∈ R
MN C
2007/2008
151 / 216
Optimização não linear sem restrições
Mínimo local
∃δ : f (x∗ ) < f (x̄), ∀x̄ ∈ Vδ (x∗ ).
∃δ : f (x∗ ) ≤ f (x̄), ∀x̄ ∈ Vδ (x∗ ).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
152 / 216
Optimização não linear sem restrições
Conceitos
Máximo e maximizante;
Mínimo e minimizante;
Óptimo local ou global;
Convergência local e global de algoritmos. Um algoritmo diz-se global
se determina um minimizante (maximizante) dada uma qualquer
aproximação inicial. Um algoritmo diz-se local se determina um
minimizante partindo apenas de uma aproximação inicial
suficientemente perto do minimizante. (Não confundir com a
determinação de mínimos locais ou globais).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
153 / 216
Optimização não linear sem restrições
Condições de optimalidade
Condições necessárias para a existência de um mínimo
f 0 (x∗ ) = 0;
f 00 (x∗ ) ≥ 0.
Condições suficientes para a existência de um mínimo
f 0 (x∗ ) = 0;
f 00 (x∗ ) > 0.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
154 / 216
Optimização não linear sem restrições
Exemplos
f (x) = (x − 1.5)2
f 0 (1.5) = 2 × (1.5 − 1.5) = 0
f 00 (1.5) = 2 > 0
f (x) = sin(x)
f 0 ( π2 ) = cos( π2 ) = 0
f 00 ( π2 ) = − sin( π2 ) = −1 < 0
1.02
0.25
1
0.2
0.98
0.96
0.15
0.94
0.92
0.1
0.9
0.88
0.05
0.86
0
1
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
2
0.84
1
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
2
Pelas condições necessária e suficiente
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
155 / 216
Optimização não linear sem restrições
Exemplos
f (x) = x4
f 0 (0) = 3 × (0)3 = 0
f 00 (0) = 12 × (0)2 = 0
f (x) = x3
f 0 (0) = 3 × (0)2 = 0
f 00 (0) = 6 × (0) = 0
1
1
0.9
0.8
0.8
0.6
0.7
0.4
0.6
0.2
0.5
0
0.4
−0.2
0.3
−0.4
0.2
−0.6
0.1
0
−1
−0.8
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
−1
−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
Verifica-se a condição necessária, mas não a condição suficiente
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
156 / 216
Optimização não linear sem restrições
Alguma notação
Gradiente de f (x) : Rn → R, x = (x1 , . . . , xn )T , vector de dimensão n
 ∂f 
∂x
 ∂f1

∇f (x) = g(x) =  ∂x2
 ...
∂f
∂xn
 ∂f ∂f
∂f T

,
,...,
=
∂x1 ∂x2
∂xn

Matriz Hessiana, matriz de dimensão n × n
 ∂2f

∇2 f (x) = G(x) = 
∂2f
∂xn ∂x1

...
...
∂2f
∂2f


∂x21
∂x1 ∂xn
A. Ismael F. Vaz (UMinho)
MN C
...
...
∂x2n
2007/2008
157 / 216
Optimização não linear sem restrições
Condições de optimalidade
Condições necessárias para a existência de um mínimo
g(x∗ ) = 0 (sistema não linear);
G(x∗ ) 0 (semi-definida positiva).
Condições suficientes para a existência de um mínimo
g(x∗ ) = 0 (sistema não linear);
G(x∗ ) 0 (definida positiva).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
158 / 216
Optimização não linear sem restrições
Exemplo
Pretende-se determinar todos os pontos óptimos do seguinte problema de
optimização
min x21 + x32 + 2x1 x2 ≡ f (x)
x∈R2
Da condição de necessária e suficiente de primeira ordem temos que
g(x) = (2x1 + 2x2 , 3x22 + 2x1 )T = (0, 0)T ,
ou seja,
(
2x1 + 2x2 = 0
3x22 + 2x1 = 0
(
⇔
x1 = −x2
3x22 − 2x2 = 0
⇔

 x1 = −x2
 x2 = 0 ∨ x2 = 2
3
Os pontos x̄ = (0, 0)T e x̂ = (− 23 , 23 )T são pontos estacionários de f (x).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
159 / 216
Optimização não linear sem restrições
Cont.
Para verificar as condições de segunda ordem temos que estudar G(x̄) e
G(x̂).
2 2
2 2
2 2
G(x) =
, G(x̄) =
, G(x̂) =
2 6x2
2 0
2 4
2 2
det(|2|) = 2, det 2 0
= −4, det 2 2
2 4
=4
e temos que G(x̄) é indefinida (x̄ é ponto sela - descanso) e G(x̂) é
definida positiva (x̂ é mínimo local forte).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
160 / 216
Optimização não linear sem restrições
Representação gráfica/Curvas de nível
1.5
15
1
10
f(x)
5
0.5
0
0
−5
−10
2
−0.5
1
0
−1
x2
−2
−1.5
−1
−0.5
0
0.5
1.5
−1
−1.5
−1.5
x1
f (x) =
A. Ismael F. Vaz (UMinho)
1
x21
+
x32
MN C
−1
−0.5
0
0.5
1
1.5
+ 2x1 x2
2007/2008
161 / 216
Optimização não linear sem restrições
Motivação para os métodos numéricos
Na determinação analítica dos pontos estacionários é necessário resolver
um sistema não linear, que é quase sempre de difícil resolução.
Exemplo
Considere-se a função f (x) = x1 ex2 − 2x1 x2 .
Os pontos estacionários de f (x) obtêm-se através da resolução do sistema
não linear
(
ex2 − 2x2 = 0
x1 ex2 − 2x1 = 0
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
162 / 216
Método de Davies Swann e Campey
Contents
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Introdução
Erros
Zeros de funções
Resolução de sistemas lineares
Resolução de sistemas não lineares
Interpolação polinomial
Mínimos quadrados lineares
Mínimos quadrados não lineares
Integração numérica
Optimização não linear sem restrições
Método de Davies Swann e Campey
Método de Nelder Mead
Método de Segurança de Newton
Método quasi-Newton
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
163 / 216
Método de Davies Swann e Campey
Forma geral do problema
A formulação matemática de um problema de optimização unidimensional,
sem restrições é
min f (x),
x∈R
com f (x) : R → R (n = 1).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
164 / 216
Método de Davies Swann e Campey
Exemplo
Pretende-se determinar o volume máximo de uma lata (cilindro), fechada
nas duas extremidades, sabendo que a quantidade de chapa a usar é de
1000 cm2 . Sendo r o raio da tampa e h a altura da lata, uma possível
formulação do problema de optimização é
max πr2 h
(r,h)∈R2
s.a 2πr2 + 2πrh = 1000
A restrição 2πr2 + 2πrh = 1000 pode ser usada para eliminar h na função
objectivo, originando o seguinte problema de minimização unidimensional
2 1000
− x = −500x + πx3
min −πx
x∈R
2πx
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
165 / 216
Método de Davies Swann e Campey
Interpolação quadrática
O método DSC procura três pontos igualmente espaçados, x1 < x2 < x3 ,
que formam uma zona convexa da função objectivo. Os três pontos
igualmente espaçados (x1 , x2 e x3 com espaçamento δ) são usados para
estimar o mínimo da função f (x), usando uma interpolação quadrática.
x∗ (q) = x2 + δ
A. Ismael F. Vaz (UMinho)
f (x1 ) − f (x3 )
2 (f (x3 ) − 2f (x2 ) + f (x1 ))
MN C
2007/2008
166 / 216
Método de Davies Swann e Campey
Método DSC
O método DSC gera uma sequência de pontos de procura definidos por
x1
x2 = x1 + pδ
x3 = x2 + p2δ
x4 = x3 + p4δ
...
xn = xn−1 + p2n−2 δ,
com p = 1 se a procura é no sentido positivo (para a direita) e p = −1 no
sentido negativo (para a esquerda).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
167 / 216
Método de Davies Swann e Campey
Cont.
A procura pára no ponto xk se f (xk ) > f (xk−1 ). Nessa altura tem-se
xk−2 < xk−1 < xk (quando p = 1. Sendo análogo para p = −1.)
em que f (xk−2 ) ≥ f (xk−1 ), f (xk−1 ) < f (xk ) e a distância entre xk e
xk−1 é o dobro da distância entre xk−1 e xk−2 . O último valor é o ponto
médio do último intervalo,
xm =
xk + xk−1
2
Para a interpolação quadrática é necessário escolher três dos quarto pontos
encontrados. Se f (xk−1 ) ≤ f (xm ) os três pontos escolhidos são xk−2 ,
xk−1 e xm . Caso contrário escolhe-se os pontos xk−1 , xm e xk .
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
168 / 216
Método de Davies Swann e Campey
Cont.
O algoritmo começa a procura no sentido positivo e caso f (x2 ) > f (x1 ) a
procura dá-se no sentido negativo. Se por sua vez obtivermos
f (x̄2 ≡ x1 − δ) > f (x1 ) procede-se à aproximação do mínimo da função
usando, na interpolação quadrática, os três pontos igualmente espaçados.
O algoritmo necessita de uma aproximação inicial (x1 ) e usa nas próximas
iterações a última aproximação ao mínimo encontrada (x∗ (q)). O algoritmo
termina quando o valor de δ usado na interpolação quadrática for inferior a
. O valor de δ é reduzido em cada iteração por um factor M (M < 1).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
169 / 216
Método de Davies Swann e Campey
Exemplo
Considere-se o problema de minimização da função f (x) = −500x + πx3 ,
usando x1 = 7.5, δ = 0.1, M = 0.5 e = 0.1.
1a iteração
x1 = 7.5
f1 = −2.4246e + 003
x2 = x1 + δ = 7.6 f2 = −2.4209e + 003
Como f2 > f1 , inverte-se a procura
x̄2 = x1 − δ = 7.4 f¯2 = −2.4270e + 003
x̄3 = x̄2 − 2δ = 7.2 f¯3 = −2.4274e + 003
x̄4 = x̄3 − 4δ = 6.8 f¯4 = −2.4122e + 003
Como f¯4 > f¯3 , pára-se a procura
xm =
A. Ismael F. Vaz (UMinho)
x̄4 +x̄3
2
= 7.0
fm = −2.4224e + 003
MN C
2007/2008
170 / 216
Método de Davies Swann e Campey
Interpretação gráfica
−2410
−2412
−2414
x4
−2416
f(x)
−2418
x2
−2420
−2422
xm
x1
−2424
−2426
x2
x3
−2428
−2430
6.5
7
7.5
8
x
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
171 / 216
Método de Davies Swann e Campey
Interpolação quadrática
Os pontos escolhidos para a interpolação são: x1 = 7.0, x2 = 7.2 e
x3 = 7.4 com f1 = −2.4224e + 003, f2 = −2.4274e + 003 e
f3 = −2.4270e + 003. O espaçamento entre pontos é δ = 0.2.
Vem então que
x∗ (q) = 7.2 + 0.2×
−2.4224e + 003 + 2.4270e + 003
2 (−2.4270e + 003 − 2 × (−2.4274e + 003) − 2.4224e + 003))
= 7.2852,
valor que deve inicial a próxima iteração, uma vez que δ = 0.2 ≮ = 0.1.
Na próxima iteração temos então x1 = 7.2852 e δ = 0.1 × 0.5 = 0.05.
Não confundir o δ da interpolação quadrática com o δ da procura
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
172 / 216
Método de Davies Swann e Campey
Cont.
2a iteração
x1 = 7.2852
f1 = −2.4279e + 003
x2 = x1 + δ = 7.3352 f2 = −2.4277e + 003
Como f2 > f1 , inverte-se a procura
x̄2 = x1 − δ = 7.2352 f¯2 = −2.4277e + 003
Como f¯2 > f1 , pára-se a procura.
Temos três pontos igualmente espaçados e procede-se à interpolação
quadrática. x1 = 7.2352, x2 = 7.2852 e x3 = 7.3352 com
f1 = −2.4277e + 003, f2 = −2.4279e + 003 e f3 = −2.4277e + 003. O
espaçamento entre pontos é δ = 0.05 e vem que
= 7.2852. Como
x∗ (q) = 7.2852 + 0.05 −2.4277e+003+2.4277e+003
...
∗
0.05
q = δ < = 0.1 pára-se com x = 7.2852. (A solução analítica é
500
3π
= 7.283656.)
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
173 / 216
Método de Davies Swann e Campey
Interpretação gráfica
−2427.65
x2
−2427.7
x2
f(x)
−2427.75
−2427.8
−2427.85
x1
−2427.9
7.22
7.24
7.26
7.28
7.3
7.32
7.34
7.36
x
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
174 / 216
Método de Nelder Mead
Contents
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Introdução
Erros
Zeros de funções
Resolução de sistemas lineares
Resolução de sistemas não lineares
Interpolação polinomial
Mínimos quadrados lineares
Mínimos quadrados não lineares
Integração numérica
Optimização não linear sem restrições
Método de Davies Swann e Campey
Método de Nelder Mead
Método de Segurança de Newton
Método quasi-Newton
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
175 / 216
Método de Nelder Mead
Forma geral do problema
A formulação matemática de um problema de optimização
multidimensional, sem restrições é
min f (x),
x∈Rn
com f (x) : Rn → R (n > 1).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
176 / 216
Método de Nelder Mead
Exemplo - Poluição atmosférica
Assumindo que a dispersão do penacho segue uma distribuição Gaussiana,
a concentração C, de gás ou aerosol (partículas com menos de 20 microns
de diâmetro) na posição x, y e ao nível do solo, de uma fonte contínua de
emissão é dada por (modelo muito simplificado)
“ ”2 “ ”2 1
− 12 σy
− 12 σ1
y
z
C(x, y) =
e
e
πσy σz
px
2 se x > 0 .
com σy = σz =
0
se x ≤ 0
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
177 / 216
Método de Nelder Mead
Exemplo - Cont.
O cálculo da poluição máxima pode ser formulado no seguinte problema
(
− 1 y 2 +1
− πx2 1 e x1 ( 2 ) se x > 0
min
x∈R2
0
se x ≤ 0
2
1.5
1
0.5
0
−0.5
−1
−1.5
−2
A. Ismael F. Vaz (UMinho)
0.5
1
1.5
2
MN C
2.5
3
3.5
4
2007/2008
178 / 216
Método de Nelder Mead
Algoritmo de Nelder-Mead
O algoritmo de Nelder-Mead destina-se a problemas de optimização
multidimensional e é um método de procura directa (apenas usa
informação da função objectivo, não usa derivadas nem as estima).
Seja n a dimensão do problema. O algoritmo usa um conjunto de n + 1
pontos no início de cada iteração. Os pontos x1 , x2 , . . . , xn+1 são
considerados os vértices de um simplex de dimensão n. Em R2 , os 3
(n + 1) pontos formam um triângulo.
Em cada iteração considera-se o simplex
Sk = hx1 , x2 , . . . , xn+1 i
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
179 / 216
Método de Nelder Mead
Cont.
Em cada iteração considera-se sempre que o simplex está ordenado por
ordem crescente dos valores da função objectivo, i.e.,
Sk = hX1 , X2 , . . . , Xn+1 i
em que f (X1 ) ≤ f (X2 ) ≤ · · · ≤ f (Xn+1 ).
O algoritmo consiste em determinar um novo simplex, através da
substituição do ponto Xn+1 por um ponto com melhor valor da função
objectivo (valor menor) ou encolhendo o simplex.
A determinação do novo ponto pode ser feita através de pontos auxiliares
que podem definir vértices reflectidos, expandidos, contraídos (para o
interior ou para o exterior) ou de um simplex encolhido.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
180 / 216
Método de Nelder Mead
Pontos auxiliares
P
Vértice reflectido xr = (1 + α)x̄ − αXn+1 , com x̄ = n1 ni=1 Xi e
α = 1.
Se xr for bom (f (X1 ) ≤ f (xr ) < f (Xn )) aceita-se xr .
Se xr for muito bom (f (xr ) < f (X1 )) faz-se uma expansão do
simplex.
Vértice expandido xe = γxr + (1 − γ)x̄ com γ = 2.
Se xe for muito bom (f (xe ) < f (X1 )) aceita-se xe , senão aceita-se xr .
Se xr for fraco (f (Xn ) ≤ f (xr ) < f (Xn+1 )) faz-se uma contracção
para o exterior.
Calcula-se x̂c = βxr + (1 − β)x̄ com β = 0.5.
Se x̂c for bom (f (x̂c ) < f (Xn )) aceita-se x̂c , senão encolhe-se o
simplex.
Se xr for muito fraco (f (xr ) ≥ f (Xn+1 )) faz-se uma contracção para
o interior.
Calcula-se xc = βXn+1 + (1 − β)x̄ com β = 0.5.
Se xc for bom (f (xc ) < f (Xn )) aceita-se xc , senão encolhe-se o
simplex.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
181 / 216
Método de Nelder Mead
Encolher o simplex - Critério de paragem
Encolher o simplex consiste em substituir os vértices Xi , i = 2, . . . , n + 1,
pelo ponto médio do segmento que os une a X1 , i.e.
xi =
Xi + X1
.
2
O critério de paragem consiste em verificar se o tamanho relativo do
simplex não é superior a uma quantidade pequena, i.e., o processo iterativo
pára se
1
max ||Xi − X1 ||2 ≤ com ∆ = max(1, ||X1 ||2 ).
∆ 2≤i≤n+1
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
182 / 216
Método de Nelder Mead
Interpretação gráfica
4
3.5
X2
3
2.5
xe
xr
2
xc
x2
1.5
x
xc
1
X3
0.5
x3
0
X1
−0.5
−1
0
2
A. Ismael F. Vaz (UMinho)
4
6
8
10
MN C
S = h(4, 0)T , (2, 3)T , (0, 1)T i
x̄ = (3, 1.5)T
xr = (6, 2)T
xe = (9, 2.5)T
xc = (1.5, 1.25)T
x̂c = (4.5, 1.75)T
2007/2008
183 / 216
Método de Nelder Mead
Exemplo
Considere-se o problema de minimização
(
1
2
2 − x1 (y2 +1)
e
se x > 0
−
πx
1
min
2
x∈R
0
se x ≤ 0.
Pretende-se determinar a solução usando o método de Nelder-Mead. O
simplex inicial é h(2, −1)T , (0.5, −0.5)T , (1.25, 1)T i e = 0.1.
O primeiro passo é ordenar o simplex pelos valores da função objectivo.
Temos f (x1 ) = −0.1171, f (x2 ) = −0.1045 e f (x3 ) = −0.1028, o que
significa que o simplex ordenado na primeira iteração é
S1 = h(2, −1)T , (0.5, −0.5)T , (1.25, 1)T i
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
184 / 216
Método de Nelder Mead
Cont.
1a iteração
x̄ =
1
(2, −1)T + (0.5, −0.5)T = (1.25, −0.75)T
2
e
xr = 2x̄ − X3 = 2(1.25, −0.75)T − (1.25, 1)T = (1.25, −2.5)T
com f (xr ) = −0.0015. Como xr é muito fraco f (xr ) ≥ f (X3 ) faz-se uma
contracção para o interior.
xc = 0.5X3 + 0.5x̄ = 0.5(1.25, 1)T + 0.5(1.25 − 0.75)T = (1.25, 0)T
com f (xc ) = −0.2288 e como f (xc ) < f (X2 ) aceita-se xc .
O novo simplex é
S2 = h(1.25, 0)T , (2, −1)T , (0.5, −0.5)T i
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
185 / 216
Método de Nelder Mead
Cont.
Critério de paragem
∆ = max(1, ||X1 ||2 ) = max(1, (1.25, 0)T 2 ) = 1.25
1
max(||X2 − X1 ||2 , ||X3 − X1 ||2 ) =
1.25
1
max((0.75, −1)T 2 , (−0.75, −0.5)T 2 ) =
1.25
√
√
1
max( 1.5625, 0.8125) =
1.25
1 = 0.1
e continua-se com a próxima iteração.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
186 / 216
Método de Nelder Mead
Interpretação gráfica
3
2
1
0
−1
−2
−3
A. Ismael F. Vaz (UMinho)
0.5
1
1.5
2
MN C
2.5
3
3.5
4
2007/2008
187 / 216
Método de Segurança de Newton
Contents
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Introdução
Erros
Zeros de funções
Resolução de sistemas lineares
Resolução de sistemas não lineares
Interpolação polinomial
Mínimos quadrados lineares
Mínimos quadrados não lineares
Integração numérica
Optimização não linear sem restrições
Método de Davies Swann e Campey
Método de Nelder Mead
Método de Segurança de Newton
Método quasi-Newton
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
188 / 216
Método de Segurança de Newton
Forma geral do problema
A formulação matemática de um problema de optimização
multidimensional, sem restrições é
min f (x),
x∈Rn
com f (x) : Rn → R (n > 1) duas vezes diferenciável.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
189 / 216
Método de Segurança de Newton
Notação
Gradiente de f (x) : Rn → R, x = (x1 , . . . , xn )T , vector de dimensão n
 ∂f 
∂x
 ∂f1

∇f (x) = g(x) =  ∂x2
 ...
∂f
∂xn
 ∂f ∂f
∂f T

,
,...,
=
∂x1 ∂x2
∂xn

Matriz Hessiana, matriz de dimensão n × n
 ∂2f

∇2 f (x) = G(x) = 
∂2f
∂xn ∂x1

...
...
∂2f
∂2f


∂x21
∂x1 ∂xn
A. Ismael F. Vaz (UMinho)
MN C
...
...
∂x2n
2007/2008
190 / 216
Método de Segurança de Newton
Alguns conceitos
O vector gradiente ‘aponta’ no sentido de subida da função.
−g(x)
g(x)
100
10
0
5
−100
0
−200
−10
− x21 − x22 − 2x1 x2 + 10
−5
−5
f (x) =
0
5
10
g(x) =
−10
(−2x1 − 2x2 , −2x2 − 2x1 )T
g(1, 1) = (−4, −4)T
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
191 / 216
Método de Segurança de Newton
Alguns conceitos - Cont.
A matrix Hessiana indica a concavidade (convexa ou côncava).
50
0
−50
−100
−150
10
−200
−10
5
0
−5
0
−5
5
10
−10
f (x) =
− x21 − x22 − 2x1 x2 + 10
−2 −2
G(x) =
−2 −2
Semi-definida negativa.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
192 / 216
Método de Segurança de Newton
Método de Newton
A função f (x), em x∗ = x + d pode ser aproximada por
1
f (x∗ ) ≈ f (x) + g(x)T d + dT G(x)d
2
(1)
que resulta da expansão em série de Taylor de f (x), com x∗
suficientemente perto de x.
A aproximação quadrática (1) pode ser usada para determinar o vector d
em que x é um vector fixo. Derivando em ordem a d e igualando a zero
obtemos
g(x) + G(x)d = 0 ⇔ G(x)d = −g(x)
(2)
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
193 / 216
Método de Segurança de Newton
Cont.
Quando a função f (x) é quadrática obtém-se a solução resolvendo o
sistema linear (2). No caso em que f (x) não é quadrática, o novo ponto
x + d não é mínimo e o processo deve ser repetido iterativamente. As
equações iterativas do processo são
x(k+1) = x(k) + d(k)
G(x(k) )d(k) = −g(x(k) ), para k = 1, 2, . . .
Nota: O método de Newton possui terminação quadrática, i.e., se f (x) for
uma função quadrática convexa o método de Newton necessita no máximo
de n iterações para encontrar a solução exacta.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
194 / 216
Método de Segurança de Newton
Método de Newton - Falhas de convergência
O método de Newton pode falhar nas seguintes condições:
A matriz G(x(k) ) é singular e d(k) não é sequer definido.
O vector direcção d(k) é quase ortogonal a g(x(k) ) e não é possível
progredir ao longo de d(k) .
O vector direcção d(k) não aponta no sentido descendente de f e não
é possível garantir a descida do valor da função.
A matriz G(x(k) )−1 existe e é definida positiva, o vector direcção d(k)
é de descida, no entanto o comprimento é tal que
f (x(k+1) ) > f (x(k) ), e o novo ponto não é melhor que o anterior.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
195 / 216
Método de Segurança de Newton
Método de segurança de Newton
O método de segurança de Newton resolve as possíveis falhas do método
de Newton.
A matriz G(x(k) ) é singular e d(k) não é sequer definido. Neste caso
toma-se como direcção de procura a direcção de descida máxima
(d(k) = −g(x(k) )).
Como a direcção de descida máxima resolve os restantes problemas
(excepto o problema do comprimento da direcção) não e necessário
verificar a quase-ortogonalidade e a descida da função objectivo.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
196 / 216
Método de Segurança de Newton
Cont.
O vector direcção d(k) é quase ortogonal a g(x(k) ) e não é possível
progredir ao longo de d(k) .
6
4
−g(1,1)
2
0
g(1,1)
−2
−4
Quase ortogonal se
−6
|g(x(k) )T d(k) | ≤ ηkg(x(k) )kkd(k) k
Se for quase ortogonal então
−6
−4
−2
0
2
4
6
d(k) = −g(x(k) )
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
197 / 216
Método de Segurança de Newton
Cont.
O vector direcção d(k) não aponta no sentido descendente de f e não é
possível garantir a descida do valor da função.
d(k) é direcção de descida se
g(x(k) )T d(k) ≤ ηkg(x(k) )kkd(k) k.
Caso d(k) não seja direcção de descida faz-se
d(k) = −d(k) .
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
198 / 216
Método de Segurança de Newton
Cont.
A matriz G(x(k) )−1 existe e é definida positiva, o vector direcção d(k) é de
descida, no entanto o comprimento é tal que f (x(k+1) ) > f (x(k) ), e o novo
ponto não é melhor que o anterior.
O método de Newton tem convergência local, i.e., x(k) tem de ser
suficientemente próximo de x∗ para que o método funcione.
A convergência global obtém-se através da introdução da procura
unidimensional (regiões de confiança!!).
x(k+1) = x(k) + αd(k)
em que o α deve ser calculado para garantir que
f (x(k+1) ) < f (x(k) )
A. Ismael F. Vaz (UMinho)
Decréscimo simples
MN C
2007/2008
199 / 216
Método de Segurança de Newton
Procura unidimensional exacta
Na procura unidimensional exacta pretende-se determinar (exactamente)
qual o valor de α que minimiza a função
φ(α) = f (x(k+1) ) com x(k+1) = x(k) + αd(k) ,
usando as condições de optimalidade
φ0 (α) = 0 e φ00 (α) > 0.
No entanto a solução para o problema minα∈R φ(α) não é de fácil
resolução (difícil implementação e cálculos computacionais pesados).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
200 / 216
Método de Segurança de Newton
Procura unidimensional
Critério de Armijo e divisões sucessivas de α por dois.
Pressupondo que a direcção de procura é de descida, gera-se uma
sequência de valores,
{ω j α}, j = 0, 1, 2, . . .
com α = 1 e ω =
1
2
até se encontrar um elemento que origine uma redução (significativa) no
valor de f
f (x(k) ) − f (x(k) + ω j αd(k) ) ≥ −µ1 ω j αg(x(k) )T d(k) .
O primeiro elemento encontrado é usado como o comprimento do passo na
iteração k (α(k) = ω j α).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
201 / 216
Método de Segurança de Newton
Critério de paragem
Considera-se as três condições para o critério de paragem
kx(k+1) − x(k) k
≤ 1
kx(k+1) k
|f (k+1) − f (k) |
≤ 2
|f (k+1) |
kg (k+1) k ≤ 3
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
202 / 216
Método de Segurança de Newton
Exemplo
Considere-se o seguinte problema de optimização
min x41 + x22 − 3x1
x∈R2
partindo de x(1) = (0, 1)T e com = 0.5.
Temos que
g(x) = (4x31 − 3, 2x2 )T
e
G(x) =
A. Ismael F. Vaz (UMinho)
12x21 0
0
2
MN C
2007/2008
203 / 216
Método de Segurança de Newton
1a iteração
g
(1)
(1)
= g(x
T
) = (−3, 2)
G
0 0
3
0 2 −2
(1)
(1)
= G(x
)=
0 0
0 2
→ Impossível
Como a matriz G(x(1) ) é singular temos que d(1) = −g (1) = (3, −2)T .
Não é necessário verificar a quase ortogonalidade e passa-se para a procura
unidimensional.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
204 / 216
Método de Segurança de Newton
Procura unidimensional
x(1) = (0, 1)T
α=1
f (1) = 1
g (1)T d(1) = −13
x̄ = x(1) + d(1) = (0, 1)T + 1(3, −2)T = (3, −1)T f (x̄) = 73
1 − 73 = f (x(1) ) − f (x̄) 10−3 × 1 × 13
α = 0.5
x̄ = (0, 1)T + 0.5(3, −2)T = (1.5, 0)T f (x̄) = 0.5625
1 − 0.5625 = f (x(1) ) − f (x̄) ≥ 10−3 × 0.5 × 13
Aceita-se α(1) = 0.5 e tem-se x(2) = (1.5, 0)T .
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
205 / 216
Método de Segurança de Newton
Critério de paragem
kx(2) − x(1) k
=
kx(2) k
√
1.52 + 12
= 1.201 0.5
1.5
Logo passa-se à próxima iteração. As restantes condições seriam (neste
caso não é necessário verificar)
|f (2) − f (1) |
1 − 0.5625
=
= 0.7778 0.5
(2)
0.5625
|f |
e
kg (2) k = k(10.5, 0)T k = 10.5 0.5
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
206 / 216
Método de Segurança de Newton
2a iteração x(2) = (1.5, 0)T
(2)
T
(2)
27 0
0 2
g = (10.5, 0) G =
27 0 −10.5
→ d(2) = (−0.3889, 0)T
0 2
0
d(2) é quase ortogonal com o gradiente?
kd(2) k = 0.3889 kg (2) k = 10.5
(g (2) )T d(2) = (10.5, 0)(−0.3889, 0)T = −4.0835
4.0835 = |(g (2) )T d(2) | 10−4 × 0.3889 × 10.5 = 4.0835 × 10−4 ,
logo d(2) não é quase ortogonal com o gradiente (se fosse d(2) = −g (2) ).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
207 / 216
Método de Segurança de Newton
2a iteração - Cont.
d(2) é direcção de descida?
kd(2) k = 0.3889 kg (2) k = 10.5
(g (2) )T d(2) = (10.5, 0)(−0.3889, 0)T = −4.0835
− 4.0835 = (g (2) )T d(2) ≤ 10−4 × 0.3889 × 10.5 = 4.0835 × 10−4 ,
logo d(2) é direcção de descida (se não fosse d(2) = −d(2) ).
Inicia-se a procura unidimensional.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
208 / 216
Método quasi-Newton
Contents
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Introdução
Erros
Zeros de funções
Resolução de sistemas lineares
Resolução de sistemas não lineares
Interpolação polinomial
Mínimos quadrados lineares
Mínimos quadrados não lineares
Integração numérica
Optimização não linear sem restrições
Método de Davies Swann e Campey
Método de Nelder Mead
Método de Segurança de Newton
Método quasi-Newton
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
209 / 216
Método quasi-Newton
Método Quasi-Newton
O método Quasi-Newton usa uma matriz aproximação à matriz
Hessiana (ou à sua inversa) da função objectivo.
O uso de uma matriz aproximação evita o cálculo da matriz Hessiana
(segundas derivadas) que pode ser difícil de obter.
A aproximação à inversa da Hessiana, em vez da própria Hessiana,
substituí a resolução de um sistema linear em cada iteração, por um
produto matriz vector. (G(x)d = −g(d) → d = −G(x)−1 g(x)).
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
210 / 216
Método quasi-Newton
Cont.
A matriz aproximação é actualizada em cada iteração usando a informação
das derivadas (gradiente) da iteração anterior.
A fórmula mais conhecida é devida a Broyden, Fletcher, Goldfarb e Shanno
(B.F.G.S.)
!
!
(k) y (k)T
(k) s(k)T
s
y
s(k) s(k)T
H (k+1) = I − (k)T (k) H (k) I − (k)T (k) + (k)T (k)
s
y
y
s
s
y
em que s(k) = α(k) d(k) = x(k+1) − x(k) e y (k) = g (k+1) − g (k) .
Quando s(k)T y (k) > 0 e H (k) é simétrica e definida positiva, a formula de
actualização garante que a matriz H (k+1) é simétrica e definida positiva.
A fórmula B.F.G.S. satisfaz a propriedade de terminação quadrática.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
211 / 216
Método quasi-Newton
Cont.
Na primeira iteração temos que H (1) = I (simétrica e definida positiva).
Quando se usa a técnica de recomeço a matriz H (k) = I sempre que
(k − 1) mod n = 0.
Como H (k) é simétrica e definida positiva não é necessário verificar a quase
ortogonalidade e se a direcção calculada é de descida para a função
objectivo.
Os problemas numéricos com a matriz H (k) , tais como
‘overflow’ na actualização de H (k) ,
um deslocamento ao longo da direcção de procura muito longo devido
à quase ortogonalidade da direcção com o gradiente,
podem ser ultrapassados usando a técnica do recomeço.
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
212 / 216
Método quasi-Newton
Exemplo
Considere-se o seguinte problema de optimização (x(1) = (0, 1)T e = 0.5)
min x41 + x22 − 3x1
x∈R2
Temos que g(x) = (4x31 − 3, 2x2 )T .
1a iteração
g (1) = g(x(1) ) = (−3, 2)T H (1) = I d(1) = −Hg (1) = (3, −2)T .
Procura unidimensional
. . . (ver exemplo do segurança de Newton)
Aceita-se α(1) = 0.5 e vem que x(2) = (1.5, 0)T .
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
213 / 216
Método quasi-Newton
Critério de paragem
kx(2) − x(1) k
=
kx(2) k
√
1.52 + 12
= 1.201 0.5
1.5
Logo passa-se à próxima iteração.
2a iteração x(2) = (1.5, 0)T e g (2) = (10.5, 0)T
H (2) =
s(1) y (1)T
I − (1)T (1)
s
y
!
H (1)
y (1) s(1)T
I − (1)T (1)
y
s
!
+
s(1) s(1)T
s(1)T y (1)
s(1) = x(2) − x(1) = (1.5, 0)T − (0, 1)T = (1.5, −1)T
y (1) = g (2) − g (1) = (10.5, 0)T − (−3, 2)T = (13.5, −2)T
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
214 / 216
Método quasi-Newton
Cont.
(1) (1)T
s
y
1.5
−1
=
20.25 −3
−13.5
2
(13.5, −2) =
s(1)T y (1) = (1.5, −1)(13.5, −2)T = 22.25
s(1) y (1)T
I − (1)T (1) =
s
y
1
0
(1) (1)T
s
H
(2)
=
s
0.0899
0.6067
0
1
−
=
0.1348
0.9101
H
A. Ismael F. Vaz (UMinho)
1.5
−1
H
(2)
0.9101 −0.1348
−0.6067
0.0899
(1.5, −1) =
(1)
=
0.0899
0.1348
=
0.0899
0.6067
2.25 −1.5
−1.5
2
0.6067
0.9101
0.1274 0.1098
0.1098 0.8202
MN C
+
0.1348
0.9101
0.1011 −0.0674
−0.0674
0.0899
2007/2008
215 / 216
Método quasi-Newton
Cont.
d
(2)
= −H
0.1274 0.1098
g =−
0.1098 0.8202
−1.3377
(2)
d =
−1.1529
(2) (2)
10.5
0
Procura unidimensional
...
A. Ismael F. Vaz (UMinho)
MN C
2007/2008
216 / 216
Download