AJUSTE DE CURVAS

Transcrição

AJUSTE DE CURVAS
1
____________________________________________________________________________________________________________________
AJUSTE DE CURVAS
Até agora, o polinômio de aproximação foi definido de tal maneira a coincidir com o
valor da função dada em pontos definidos (interpolação). Em certos tipos de problemas, isto
pode não ser desejável, em particular se os valores foram obtidos experimentalmente e são,
portanto, sujeitos a erros. Não é conveniente incorporar esses erros à função de aproximação que
reflita a tendência geral da função dada.
y
.
. ..
. . .
x0
x
xn
Dados n pontos (xi,yi), i = 1,.., n, deseja-se ajustar a eles uma curva g(x), que seja uma
“boa aproximação” para esses pontos tabelados.
y
. . .
x0
x1
. .
.
.
xn
x
_________________________________________________________________________________________________________
Métodos Numéricos Computacionais
Profa. Adriana Cherri
Profa. Andréa Vianna
Prof. Antonio Balbo
Profa Edméa Baptista
2
____________________________________________________________________________________________________________________
MÉTODO DOS MÍNIMOS QUADRADOS
Ajuste de Curva – Caso Discreto
Dados os pontos (xi, f(xi)), i = 1, ..., n, e as n funções g1(x), g2(x), ..., g2(xn) escolhidas de
alguma forma, devemos determinar os coeficientes a1, a2, ..., an tal que a função g(x) = a1g1(x)+
a2g2(x)+ ...+ angn(x) se aproxime ao máximo de f(x).
O ajuste de curvas pelo Método dos Mínimos Quadrados tem por objetivo ajustar g(x) =
f(x), de forma que os desvios quadráticos sejam mínimos, ou seja, os coeficientes ai que fazem
com que g(x) se aproxime ao máximo de f(x), são os que minimizam a função:
n
n
i 1
i 1
minimizar  ( f ( xi )  g ( xi )) 2 minimizar  ei2  minimizar (erros)2
Tipos de ajustes:
 Ajuste polinomial
g ( x)  a1 g1 ( x)  a2 g2 ( x)  ...  an g n ( x)
 Ajuste exponencial
g ( x)  ab x
g ( x)  aebx
g ( x)  eaxb
 Ajuste hiperbólico
1
g ( x) 
a1 x  a2
_________________________________________________________________________________________________________
Métodos Numéricos Computacionais
Profa. Adriana Cherri
Profa. Andréa Vianna
Prof. Antonio Balbo
Profa Edméa Baptista
3
____________________________________________________________________________________________________________________
AJUSTE DE POLINOMIAL – RETA
y
. .
. . .
x0
.
.
x
xn
x1
Dados n pontos (xi, yi), i = 1,.., n, deseja-se ajustar a eles uma reta g(x) = a1g1(x)+ a2g2(x)
= a1x + a2. Assim, g1(x) = x e g2(x) = 1. Dessa forma, devemos determinar a1 e a2 de modo que a
função g(x) se ajuste melhor os dados da tabela, ou seja,
n
min

n
n
ei2
i 1
= min
 ( f ( x )  g ( x ))
i 1
i
2
i
 E(a1, a2) = min
= min
[ f ( x )  (a x  a )]
2
i
i 1
1 i
2
n
 ( f (x )  a x  a )
i 1
i
1 i
2
2
Do cálculo diferencial, se a função E(a1, a2) possui um ponto de mínimo, então suas
E
E
derivadas parciais devem ser nulas, ou seja,
0e
 0 . Portanto,
a1
a2
 n 2
   ei
 i 1  0
 a1

 n
  e2
i
 
i 1
0


a
2

 n
2 ( y i a1 xi  a2 )( xi )  0
 i 1

 n
2 ( y a x  a )(1)  0
i
1 i
2
 
i 1
n
n
 n
2
x
y

a
x

 i i  1 i  a2 xi  0
 i 1
i 1
i 1
  n
n
n
 y  ax  a 0


i
1 i
2

i 1
i 1
i 1

 n
 ( y i a1 xi  a2 )( xi )  0
 i 1

 n
 ( y a x  a )  0
i
1 i
2

i 1
n
n
 n 2
a
x

a
x

xi y i

2 i
 1 i
 i 1
i 1
i 1
 n
n
a
x

a
(
n
)

yi

i
2
 1 
i 1
i 1
_________________________________________________________________________________________________________
Métodos Numéricos Computacionais
Profa. Adriana Cherri
Profa. Andréa Vianna
Prof. Antonio Balbo
Profa Edméa Baptista
4
____________________________________________________________________________________________________________________
Desta forma, tem-se o seguinte sistema linear:

 n

 m
  xi
 i 1

 m

x
yi 



i 
a
i 1
  2    i 1

m
m



a
xi2   1    xi yi 

i 1

 i 1

m
Esse sistema pode ser resolvido por qualquer método visto anteriormente, em particular,
o método de Cholesky pode ser aplicado, pois o sistema de equações possui a matriz simétrica e
definida positiva.
Exemplo
Ajuste os pontos abaixo a g(x) e calcule o erro.
x
y
0
0,98
1
-3,01
2
-6,99
3
-11,01
4
-15
_________________________________________________________________________________________________________
Métodos Numéricos Computacionais
Profa. Adriana Cherri
Profa. Andréa Vianna
Prof. Antonio Balbo
Profa Edméa Baptista
5
____________________________________________________________________________________________________________________
AJUSTE POLINOMIAL
y
.
.
.
...
x0 x1
.
xn
x
Dados n pontos (xi,yi), i = 1,.., n, e o valor do grau do polinômio a ser determinado,
deseja-se encontrar os coeficientes do polinômio g ( x)  a1 g1 ( x)  a2 g2 ( x)  ...  an g n ( x) de
n
modo que min
 ( f ( x )  g ( x ))
i
i 1
n
Resolvendo min
( y
i
i 1









2
i
.
 g ( xi )) 2 , obtém-se o seguinte sistema linear:
x
x
x
x
x
x
x
x
x
x
x
n
i
2
i
2
i
3
i
n
i
i
n 1
i
2
...
i
3
...
i
4
...
i
n 2
...
i
x
x
x
  a    yi 
 n  

n 1 
x
y



a

i
i
i
 n 1  
n2 
2
    xi yi 
 
i
  a2  




nn 
a1   x n y 

x
 i 
 i i 
n
i
Exemplo
Ajuste os pontos da tabela abaixo à uma equação do 2o grau e calcule o erro cometido.
x
y
-2,0
-30,5
-1,5
-20,2
0,0
-3,3
1,0
9,2
2,2
16,8
3,1
21,4
_________________________________________________________________________________________________________
Métodos Numéricos Computacionais
Profa. Adriana Cherri
Profa. Andréa Vianna
Prof. Antonio Balbo
Profa Edméa Baptista
6
____________________________________________________________________________________________________________________
Ajuste de Curva – Caso Contínuo
O método dos mínimos quadrados também pode ser usado para aproximar uma função
f(x) contínua num intervalo [a,b] por uma combinação de funções do tipo
g ( x)  a1g1 ( x)   2 g2 ( x)  ...   n gn ( x)
em que g1(x), g2(x), ..., gn(x) são funções contínuas no intervalo [a,b]. Neste caso, queremos
determinar g(x) que melhor se aproxime da função f(x), ou seja, queremos que a área entre as
curvas de f(x) e g(x) seja a menor possível. Desta forma:
2
b
E (a1 , a2 ,...an ) 
  f ( x)  g ( x) dx
a
Assim, o problema do método dos mínimos quadrados é definido por
b
minimizar  f ( x)  (a1g1 ( x)  a2 g 2 ( x)  ...  an g n ( x)) dx

2
a
Portanto, o pronto de mínimo necessariamente satisfaz:
E E
E

 ... 
0
a1 a2
an
ou seja,
E
 2
ai

 f ( x) 

a

ak g k ( x)  gi ( x) dx  0, i  1,...,n

k 1

b
n


Assim:
b
b

b

a1 g1 ( x) gi ( x)dx  ...  an g n ( x) gi ( x)dx 
a
a
 f ( x) g ( x)dx, 1  1,...,n
i
a
Utilizando a notação de produto escalar de funções:
b
f ,g 
 f ( x) g ( x)dx
a
Temos o sistema de equações normais:
 g1 , g1

 g 2 , g1
 

 g n , g1
g1 , g 2

g2 , g2


gn , g2

g1 , g n   a1   g1 , f 



g 2 , g n  a2   g 2 , f 

      
  

g n , g n  an   g n , f 
Se o determinante da matriz do sistema de equações normais for diferente de zero, o
sistema possui solução única, ou seja, existe uma única função g(x) que melhor se ajusta a
função f(x).
_________________________________________________________________________________________________________
Métodos Numéricos Computacionais
Profa. Adriana Cherri
Profa. Andréa Vianna
Prof. Antonio Balbo
Profa Edméa Baptista
7
____________________________________________________________________________________________________________________
Para um caso simples, sejam as funções g1(x) e g2(x) que definem a função g(x),
contínuas no intervalo [a,b] e escolhidas a partir de algum critério de mérito:
g ( x)  a1 g1 ( x)  a2 g 2 ( x)
Deseja-se encontrar a1 e a2 que melhor ajuste a reta g(x) a f(x), não obrigando que a
curva ajustada passe pelos pontos f(a) e f(b).
6
f (x)
5
4
f (x)
3
f i (x)
2
1
0
a
-1
-1
0
b
1
2
3
x
4
5
6
Fazendo a substituição, tem-se:
b
E
  f ( x) 
2
g ( x) dx 
a

 f ( x)
b
2
a
  f ( x)

b
2
 2 f ( x) g ( x)  ( g ( x)) 2 dx 
a

 2 f ( x)a1 g1 ( x)  a2 g 2 ( x)  a12 g1 ( x) 2  2a1a2 g1 ( x) g 2 ( x)  a2 g 2 ( x) 2 dx 
2
 b

 b

b

  f ( x) dx  2 f ( x) g1 ( x)dx  a1  2 f ( x) g 2 ( x)dx  a2   g1 ( x) 2 dx  a12 
 a
a
 a

 a


2
b




 b

b
 2
 2 g1 ( x) g 2 ( x)dx  a1a2   g 2 ( x) 2 dx  a2  F (a1 , a2 )
 a

 a





A solução é encontrar a1 , a 2 tal que:
E
ai
 0 para i  1,2
a1 ,a 2
b
 b

 b

E
2
 2 f ( x) g1 ( x)dx  2 g1 ( x) dx a1  2 g1 ( x) g 2 ( x)dx a2
a1
a
 a

 a




_________________________________________________________________________________________________________
Métodos Numéricos Computacionais
Profa. Adriana Cherri
Profa. Andréa Vianna
Prof. Antonio Balbo
Profa Edméa Baptista
8
____________________________________________________________________________________________________________________
b
 b

 b

E
 2 f ( x) g 2 ( x)dx  2 g 2 ( x) 2 dx  a2  2 g1 ( x) g 2 ( x)dx a1
 2
 a

 a

a



Igualando-se a zero e reagrupando, tem-se:
b
 b

b

2
g
(
x
)
dx
a

g
(
x
)
g
(
x
)
dx
a

f ( x) g1 ( x)dx
 1
 1  1
 2
2
 a

 a

a
 b
b
b




2
 g1 ( x) g 2 ( x)dx  a1   g 2 ( x) dx  a2  f ( x) g 2 ( x)dx
a

 a

 a






Estas equações resultam num sistema de equações tal que:
 b
2
  g1 ( x) dx
A =  b a
 g1 ( x) g 2 ( x)dx

a

b

g
(
x
)
g
(
x
)
dx

  f ( x) g1 ( x)dx 
a 1 2
 e ba

b

b

2



g
(
x
)
dx
f
(
x
)
g
(
x
)
dx
2
a 2




a

b
Exemplo:
Aproximar f ( x)  4 x 3 por uma reta no intervalo [0,1].
_________________________________________________________________________________________________________
Métodos Numéricos Computacionais
Profa. Adriana Cherri
Profa. Andréa Vianna
Prof. Antonio Balbo
Profa Edméa Baptista
9
____________________________________________________________________________________________________________________
REGRESSÃO NÃO LINEAR NOS PARÂMETROS – AJUSTE NÃO LINEAR
Muitas vezes, os dados experimentais necessitam de uma família de funções para
representa-los que não é composta por combinação linear nos parâmetros. Desta forma, faz-se
necessário o uso de outras funções para ajustar adequadamente uma função representada na
forma de tabela.
Ajuste exponencial
Existem casos, em que os dados experimentais sugerem que a função tabelada deve ser
aproximada por uma função exponencial da forma g(x) = a(b)x, com a e b positivos. Os valores
de a e b devem ser obtidos de modo que o erro seja mínimo, ou seja:
E ( a , b) 
n

e( xi ) 2  minimizar
i 1
n
  f ( x )  g ( x )
2
i
i
i 1
A função exponencial g(x) = a(b)x pode ser ajustada fazendo a seguinte transformação:
h(x) = ln(g(x)) = ln(a(b)x) = ln(a) + xln(b)
Definindo:
a1 = ln(a), então ea1 = a
a2 = ln(b), então ea2 = b
Desta forma h(x) = ln(a) + xln(b) = a + bx é representada por uma combinação linear das
funções g1(x) = x e g2(x) = 1, ou seja, h(x) = a1g1(x) + a2g2(x).
Para que a função g(x) aproxime-se de f(x), a função h(x) deve se aproximar de ln(f(x)),
ou seja:
g(x)  f(x)  ln(g(x))  ln(f(x))
A tabela de pontos fica definida como:
x1
x2
ln(f1(x)) ln(f2(x))
...
...
xn
ln(fn(x))
Do ajuste de reta tem-se o seguinte sistema linear:







n

i 1
n

i 1


xi2 a1  




n

i 1

xi a2 



xi a1  (n)a2 


n
 ln( f ( x ))x
i
i
i 1
n
 ln( f ( x ))
i
i 1
Com os valores de a1 e a2 obtidos com a resolução do sistema linear, resolvemos o
n
problema: minimizar
 ln( f ( x ))  h( x )
2
i
i
.
i 1
_________________________________________________________________________________________________________
Métodos Numéricos Computacionais
Profa. Adriana Cherri
Profa. Andréa Vianna
Prof. Antonio Balbo
Profa Edméa Baptista
10
____________________________________________________________________________________________________________________
Exemplo
Ajuste os pontos da tabela à equação g(x) = a(b)x, com 0 < b < 1, e calcule o erro cometido.
xi
f(xi)
-1
6,01
-0,9
5,39
-0,8
4,80
0
2,01
1
0,65
2
0,21
_________________________________________________________________________________________________________
Métodos Numéricos Computacionais
Profa. Adriana Cherri
Profa. Andréa Vianna
Prof. Antonio Balbo
Profa Edméa Baptista
11
____________________________________________________________________________________________________________________
Ajuste hiperbólico
No ajuste hiperbólico, observa-se que os pontos tabelados possuem um comportamento
que se aproxima de uma função definida por:
1
g ( x) 
a1 ( x)  a2
Novamente, deseja-se determinar os parâmetros a1 e a2 tal que:
E (a1 , a2 ) 
n

e( xi ) 2  minimizar
i 1
Se g ( x) 
n
  f ( x )  g ( x )
2
i
i
i 1
1
1
aproxima-se da função f(x), fazemos h( x) 
 a1 ( x)  a2 , que
a1 ( x)  a2
g ( x)
aproxima-se da função
1
1

.
g ( x)
f ( x)
1
, ou seja, g(x)  f(x) 
f ( x)
A tabela de pontos fica definida como:
x1
x2
1/f1(x) 1/f2(x)
...
...
xn
1/fn(x)
Do ajuste de reta tem-se o seguinte sistema linear:







n

i 1
n

i 1


xi2 a1  


n

i 1

xi a2 


xi a1  (n)a2 

n
n
 f (x )
xi
i 1
i
 f (x )
i 1
1
i
Com os valores de a1 e a2 obtidos com a resolução do sistema linear, resolvemos o
n

problema: minimizar
i 1
2
 1

 h( xi ) .

 f ( xi )

Exemplo
Ajuste os pontos da tabela à equação g ( x) 
xi
f(xi)
-3
-0,13
1
e calcule o erro cometido.
a1 ( x)  a2
-2
-0,20
-1
-0,49
-0,5
-2,01
-0,4
-4,99
_________________________________________________________________________________________________________
Métodos Numéricos Computacionais
Profa. Adriana Cherri
Profa. Andréa Vianna
Prof. Antonio Balbo
Profa Edméa Baptista
12
____________________________________________________________________________________________________________________
Exercícios
1. Ajuste os pontos abaixo à equação y = b0+b1x+b2x2+b3x3.
x
y
-5
386
-4
225
-2
54
0
6
1
13
2
40
3
110
5
220
2. Ajuste os dados abaixo utilizando uma reta e uma parábola. Trace as duas curvas no
gráfico de dispersão dos dados. Compare.
x
y
1
0,5
2
0,6
3
0,9
4
0,8
5
1,2
6
1,5
7
1,7
8
2,0
3. Aproxime a função f(x) = (x3-1)2, x  [-1,1], por uma reta e, por um polinômio de 2o grau.
Compare os resultados obtidos.
4. Aproxime a função f(x) = 3 x no intervalo [0,1] por um polinômio de 3o grau, usando
os valores de x com incremento de 0,1.
5. Ajuste os pontos abaixo à equação g(x) = beax e calcule o erro cometido.
xi
yi
0,10
1,77
1,50
2,17
6. Ajuste os dados abaixo à equação z(xi) =
xi
z(xi)
0,00
0,06
0,20
0,12
3,30
2,48
4,50
2,99
5,00
3,15
1
.
1  ea bx
0,50
0,30
0,60
0,60
0,80
0,73
1,10
0,74
7. Aproxime a tabela abaixo por uma função do tipo g(x)=1+aebx.
x
y
0,0
2,0
0,5
2,6
1,0
3,7
2,5
13,2
3,0
21,0
8. Faça o diagrama de dispersão e ajuste os dados da tabela abaixo. Calcule o erro.
x
y
1,5
2,0
3,4
5,0
5,1
3,8
6,8
6,1
8,0
5,8
9. Dada a tabela
x
y
1,00
1,00
1,05
1,01
1,10
1,02
1,15
1,04
1,20
1,05
1,25
1,06
1,30
1,07
1,35
1,08
Determine g(x) e calcule o valor de f(1,18).
_________________________________________________________________________________________________________
Métodos Numéricos Computacionais
Profa. Adriana Cherri
Profa. Andréa Vianna
Prof. Antonio Balbo
Profa Edméa Baptista

Documentos relacionados

Métodos Numéricos Computacionais

Métodos Numéricos Computacionais para os quais as soluções manuais são impraticáveis, imprecisas, ou ainda, são muito custosas em relação ao tempo de execução. Desta forma, o uso do computador como ferramenta de trabalho de cálcul...

Leia mais

Solução Numérica de Equações Diferenciais Ordinárias

Solução Numérica de Equações Diferenciais Ordinárias Observação: Notamos que os valores encontrados através do método de Euler estão muito distantes dos verdadeiros valores. Isto ocorre, pois, o erro cometido no 1O intervalo é carregado para o 2O int...

Leia mais

SISTEMAS DE EQUAÇÕES LINEARES

SISTEMAS DE EQUAÇÕES LINEARES Para sistemas lineares possíveis e determinados de dimensão n  n , o vetor solução x, é dado por x  A1b . No entanto, calcular explicitamente a inversa de uma matriz não é aconselhável, devido à...

Leia mais