9-CN - Aula10 - MMQ Introducao e Ajuste Linear
9-CN - Aula10 - MMQ Introducao e Ajuste Linear
9-CN - Aula10 - MMQ Introducao e Ajuste Linear
linear
Profa . Vanessa Rolnik - DCM - FFCLRP/USP
Este material é baseado nas Seções 7.1 e 7.2 do livro FRANCO, N.B. Cálculo
Numérico. São Paulo: Pearson Prentice Hall, 2006.
Introdução
Ajustar uma curva consiste em escolher uma famı́lia de funções g que depende de
alguns parâmetros e determinar tais parâmetros de forma que melhor represente os
dados disponiveis. Por exemplo,
• um conjunto de pontos (xi , f (xi )) e precisamos de uma função contı́nua que re-
presente os dados (caso discreto)
O ajuste de curvas pelo Método dos Mı́nimos Quadrados fornece uma “boa apro-
ximação” para a f e permite “extrapolar” as informações/tendências com uma certa
margem de segurança.
Sabendo que V = Ri, queremos determinar o R que faz a reta melhor se ajustar aos
pontos.
1
Ajuste linear - caso discreto
f tabelada e g é um polinômio do 1o grau
x x1 x2 ··· xn
f (x) f (x1 ) f (x2 ) · · · f (xn )
f (x) ≈ g(x) = a + bx
queremos determinar os parâmetros a e b de modo que a função g esteja mais próxima
possı́vel da f em algum sentido.
Precisamos definir uma forma de medir o erro entre f e g. Seja a função resı́duo
É possı́vel verificar que o sistema normal possui solução única desde que todos os
xi ’s sejam distintos e que a solução, (a∗ , b∗ ), é um ponto de mı́nimo de M .
2
Assim, podemos concluir que entre o conjunto de todas os polinômios do 1o grau, o
que melhor se ajusta aos dados, no sentido dos mı́nimos quadrados, é g(x) = a∗ + b∗ x.
Qualquer outro possui a soma dos resı́duos ao quadrado maior do que a de g.
x −1 0 1 2
y 0 −1 0 7
O sistema fica
4a + 2b = 6
2a + 6b = 14
que possui a solução a = 0.4 e b = 2.2.
Portanto, a função de ajuste é g(x) = 0.4 + 2.2x. Esta é a reta que melhor se ajusta
aos pontos da tabela. Sua soma dos resı́duos ao quadrado (erro de truncamento) é
X 4
[f (xi ) − 0.4 − 2.2xi ]2 = [0 − 0.4 − 2.2(−1)]2 + [−1 − 0.4 − 2.2(0)]2 + [0 − 0.4 −
i=1
2.2(1)]2 + [7 − 0.4 − 2.2(2)]2 = 1.82 + (−1.4)2 + (−2.6)2 + 2.22 = 16.8.
3
Ajuste linear - caso contı́nuo
f definida em um intervalo [c, d] e g um polinômio do 1o grau, ou seja,
f (x) ≈ g(x) = a + bx
e queremos determinar os parâmetros a e b de modo que a função g esteja mais próxima
possı́vel da f no sentido dos mı́nimos quadrados.
Exemplo 2. Seja f (x) = x4 − 5x, x ∈ [−1, 1]. Aproximar f (x) por um polinômio do
1o grau usando o método dos mı́nimos quadrados.
Começamos pelo cálculo das integrais do sistema normal (2) de −1 a 1
Z 1
1 dx = x|1−1 = 2
Z−11 1
x2
x dx = =0
−1 2 −1
Z 1 1
2 x3 2
x dx = =
−1 3 −1 3
Z 1 Z 1 5 1
4 x 5x2 2
f (x) dx = (x − 5x) dx = − =
−1 −1 5 2
−1 5
Z 1 Z 1 3 1
6
x 5x 10
xf (x) dx = (x5 − 5x2 ) dx = − =−
−1 −1 6 3
−1 3
Assim, obtemos
2a + 0b = 25
0a + 23 b = − 10
3
1 1
que tem como solução a = e b = −5. Portanto, g(x) = − 5x.
5 5
4
Exercı́cios
2) Aproximar f (x) = ex por uma reta no intervalo [0, 1] e calcular o erro de truncamento.
caso contı́nuo, semelhante ao Exemplo 2.
5
Xn Xn Xn Xn Xn Xn
1 xi f (xi ) xi 1 f (xi )
i=1 i=1 i=1 i=1 i=1 i=1
A= X , A1 = X e A2 = X
n Xn n Xn n Xn
2 2
xi xi xi f (xi ) xi xi xi f (xi )
i=1 i=1 i=1 i=1 i=1 i=1
n
X n
X n
X n
X
f (xi ) x2i − xi xi f (xi )
det(A1 ) i=1 i=1 i=1 i=1
a= = n n n n
det(A) X X X X
1 x2i − xi xi
i=1 i=1 i=1 i=1
n
X n
X n
X n
X
1 xi f (xi ) − f (xi ) xi
det(A1 ) i=1 i=1 i=1 i=1
b= = n n n n
det(A) X X X X
1 x2i − xi xi
i=1 i=1 i=1 i=1
Dados de entrada:
n ( inteiro): quantidade de pontos
x[n] (vetor de números reais): valores de x tabelados
f[n] (vetor de números reais): valores de f (x) tabelados
Saı́da: coeficientes a e b da reta g(x) = a + bx
INICIO
somax=0
somax2=0
somaf=0
somaxf=0
Para i de 1 até n faça
somax=somax+x[i]
somax2=somax2+x[i]*x[i]
somaf=somaf+f[i]
somaxf=somaxf+x[i]*f[i]
fim
numa = somaf*somax2-somax*somaxf
numb = soman*somaxf-somaf*somax
denom = n*somax2-somax*somax
a=numa/denom
b=numb/denom
Escreva “A reta de ajuste é g(x)=’a’+’b’x .”
FIM
6
corretamente os dados. O R2 varia entre 0 e 1 e quanto mais próximo de 1, melhor o
ajsute representa os dados. É dado por
SQres
R2 = 1 −
SQtot
n n
1X X
onde ȳ = f (xi ) (ponto médio), SQres = [f (xi ) − g(xi )]2 (erro residual)
n i=1 i=1
Xn n
X
SQtot = [f (xi ) − ȳ]2 (erro total), SQexp = [g(xi ) − ȳ]2 (erro não explicado)
i=1 i=1
Calcule o coeficiente R2 do ajuste do Exemplo 1. Incluir o cálculo do R2 no algoritmo
do ajuste linear.
SQtot = 0.12907, SQres = 0.00056256 ⇒ R2 = 1 − df rac0.000562560.12907 =
0.99564