ISCTE/FCUL - Mestrado Matem´atica Financeira Aula 1
03 de Janeiro de 2009 Ano lectivo: 2008/2009 Diana Aldea Mendes
Departamento de M´etodos Quantitativos, IBS - ISCTE Business School Gab. 207 AA, diana.mendes@iscte.pt, http://iscte.pt/˜deam
1. Introdu¸c˜ao e conceitos b´asicos de optimiza¸c˜ao sem restri¸c˜oes
2. M´etodos num´ericos de optimiza¸c˜ao de fun¸c˜oes de uma vari´avel (a) Interpola¸c˜ao polinomial
(b) Algoritmos de Newton, secante, bisec¸c˜ao e de Brent
3. M´etodos num´ericos de optimiza¸c˜ao de fun¸c˜oes de v´arias vari´aveis (a) M´etodos iterativos directos e indirectos de 1a e 2a ordem
(b) M´etodo de Newton e quase-Newton (c) M´etodo de Powell
(d) M´etodo do gradiente conjugado (e) M´etodo dos m´ınimos quadrados
4. Introdu¸c˜ao `a Optimiza¸c˜ao Global
(a) Arrefecimento simulado (Simulating Annealing) (b) Algoritmos Gen´eticos
Referˆ
encias
[1] Nocedal, J. and Wright, St, Numerical optimization, Springer Verlag (1999)
[2] Dennis, J. and Schnabel, R., Numerical methods for unconstrained optimiza-tion and nonlinear equaoptimiza-tions, SIAM (1996)
[3] Mathews, J. H. and Fink, K. D. (1999): Numerical Methods using Matlab, Prentice-Hall., Inc.
[4] Neumaier, A. (2001): Introduction to Numerical Analysis, Cambridge Uni-versity Press.
[5] Paolo Brandimarte, (2001): Numerical Methods in Finance: A MATLAB-Based Introduction, Wiley-Interscience.
[6] Lemos, C. e Pina, H. (2006), M´etodos Num´ericos: complementos e guia pr´atico, IST Press.
Avalia¸c˜ao: Os conceitos e algoritmos apresentados s˜ao ilustrados com proble-mas que s˜ao formulados e resolvidos usando o programa MATLAB. A avalia¸c˜ao assenta na resolu¸c˜ao de uma lista de problemas.
- http://www.compmacro.com/makoto/200409econ552/ - http://cm.bell-labs.com/netlib/opt/
- http://tomlab.biz/
- http://www.rpi.edu/˜bennek/class/compopt/ - http://www.ee.technion.ac.il/courses/046197/
Introdu¸
c˜
ao
• Optimiza¸c˜ao n˜ao-linear (num´erica): m´etodos que permitem resolver prob-lemas cient´ıficos usando o computador.
• Solu¸c˜oes anal´ıticas: existem s´o para um pequeno subconjunto das equa¸c˜oes existentes
— Problemas f´aceis: polin´omios at´e grau 4, fun¸c˜oes em que a vari´avel indepen-dente aprece apenas num termo
• Trˆes passos:
— expressar matematicamente o problema cient´ıfico
— escolher m´etodos num´ericos que permitam obter, de forma robusta, efi-ciente e precissa, uma solu¸c˜ao aproximada do problema
— implementa¸c˜ao do algoritmo no computador e estudo do erro de aprox-ima¸c˜ao
• Acumula¸c˜ao de Erros
— erros inerentes (modelo matem´atico n˜ao traduz exactamente a reali-dadae)
— erros do m´etodo (uso de f´ormulas que d˜ao valores aproximados: Taylor) — erros computacionais (erro de arredondamento)
- Seja ¯x o valor aproximado do valor exacto x. O erro de ¯x em rela¸c˜ao a x define-se por ex = x − ¯x.
|ex| = |x − ¯x| representa o erro absoluto de ¯x e se x 6= 0, ent˜ao
|δx| = ¯ ¯ ¯ ¯x − ¯ x x ¯ ¯ ¯ ¯
´e o erro relativo de ¯x. Ao produto 100 |δx|, expresso em percentagem, chama-se
percentagem de erro.
- Um problema diz-se bem condicionado se pequenos erros nos dados produzem pequenos erros nos resultados. Caso contr´ario o problema ´e mal condicionado.
Optimiza¸
c˜
ao num´
erica univariada
• Objectivo: Encontrar um zero (ra´ız) de uma fun¸c˜ao real de uma vari´avel real, isto ´e, um n´umero x∗ tal que f (x∗) = 0.
• Este problema surge em diferentes contextos, como por exemplo — solu¸c˜oes de equa¸c˜oes de tipo: p (x) = q (x)
— extremos interiores de fun¸c˜oes de classe C1 — pontos singulares
— problemas com condi¸c˜oes de fronteira (equa¸c˜oes diferenciais, equa¸c˜oes as derivadas parciais e equa¸c˜oes integrais)
Defini¸c˜ao 1: Um ponto x∗ ∈ D ⊂
R
diz-se minimizante local de f : D →R
(fun¸c˜ao objectivo) se existe ε > 0 tal que f (x∗) ≤ f (x) , ∀x ∈ Nε (x∗) ∩ D. Defini¸c˜ao 2: Um ponto x∗ ∈ D ⊂R
diz-se minimizante global de f : D →R
se f (x∗) ≤ f (x) , ∀x ∈ D. Observa¸c˜ao 1: max x∈D f (x) = − µ min x∈D (−f (x)) ¶de optimiza¸c˜ao s˜ao m´etodos iterativos e geralmente determinam um extremo local. Para obter um extremo global ´e necess´ario aplicar algum tipo de itera¸c˜ao externa.
(b). N˜ao existe nenhum crit´erio para decidir se uma solu¸c˜ao local ´e global ou n˜ao.
(c). Se f ´e convexa, ent˜ao qualquer minimizante local de f ´e um minimizante global de f .
(d). Se a fun¸c˜ao objectivo f ´e regular e o conjunto D ´e compacto, ent˜ao a existˆencia de um minimizante global ´e garantida pelo Teorema de Weierstrass.
(e). Muitas vezes a express˜ao (e regularidade) de f n˜ao ´e conhecida e o teorema anterior n˜ao se aplica.
Determine uma solu¸c˜ao da seguinte equa¸c˜ao n˜ao-linear cos x = x
- Ponto inicial: x0 = 0 → x1 = cos x0 = 1 → x2 = cos x1 = 0.5403 → ....x20 = 0.738 → x21 = 0.739 → x22 = 0.739 → x23 = 0.739 (convergˆencia) Portanto, x ' 0.739 ´e a solu¸c˜ao aproximada da equa¸c˜ao n˜ao-linear.
- Matlab:
>> fzero(’cosy’,0) >> ans =0.7391
-3 -2 -1 0 1 2 3 -3 -2 -1 0 1 2 3 cos(x)=x
Determine uma solu¸c˜ao da seguinte equa¸c˜ao n˜ao-linear x2 = x
- Se escolhemos o ponto inicial x0 = 1 ent˜ao → x = 1.Se x0 6= 1 → x → 0 ou x → ∞.
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -1 -0.5 0 0.5 1 1.5 2 x2=x
problem): p(x) = x5 − 10x4 + 40x3 − 80x2 + 80x − 32 = (x − 2)5
- polin´omio em Matlab: (comando roots - determina os zeros dos polin´omios) >> p=[1 -10 40 -80 80 -32]; >> x=roots(p)
x = 2.0020 + 0.0015i, 2.0020 - 0.0015i, 1.9992 + 0.0024i, 1.9992 - 0.0024i, 1.9975
- O algoritmo utilizado pelo comando roots envolve a computa¸c˜ao dos valores pr´oprios da matriz associada ao polin´omio.
• Outro comando Matlab melhor ( fzero)
>> rt = fzero(’(x-2)ˆ5’,1.5) >> rt=2.0000
x = fzero(fun,x0) tenta encontrar um zero da fun¸c˜ao fun pr´oximo de x0.
- O algoritmo do m-file fzero (T.Dekker) utiliza uma combina¸c˜ao entre os m´etodos de bisec¸c˜ao, secante e interpola¸c˜ao quadr´atica inversa
- Limita¸c˜oes do fzero: quando a fun¸c˜aom objectivo ´e tangente (mas n˜ao cruza) ao eixo dos xx, o algoritmo pode n˜ao encontrar o m´ınimo.
• Outro comando Matlab ainda melhor (fminbnd):
>> x = fminbnd(fun,x1,x2) - encontra o minimo de uma fun¸c˜ao dentro de um intervalo fixado (x1,x2)
- O algoritmo est´a baseado no m´etodo da sec¸c˜ao de ouro e na interpola¸c˜ao parab´olica.
- Limita¸c˜oes do fminbnd: a fun¸c˜ao objectivo precissa ser cont´ınua e real, o algoritmo s´o encontra solu¸c˜oes locais e a convergˆencia ´e lenta quando a solu¸c˜ao ´e na fronteira
M´
etodos directos de optimiza¸
c˜
ao univariada
• S´o requerem a evalua¸c˜ao da fun¸c˜ao objectivo f (n˜ao s˜ao necess´arias as derivadas de f )
• N˜ao precisam hip´oteses de regularidade
• Faceis de implementar - m´etodos iterativos xn+1 = f (xn)
• Interpola¸c˜ao polinomial
• M´etodo da secante
• M´etodo da bisec¸c˜ao
Interpola¸
c˜
ao polinomial
(Vandermonde, Lagrange, Newton, m´ınimos quadrados)A interpola¸c˜ao consiste em determinar uma fun¸c˜ao que assume valores conheci-dos em certos ponto discretos de tipo (xi, fi) . A classe de fun¸c˜oes escolhida ´e a priori arbitr´aria, mas deve ser adequada `as caracter´ısticas que pretendemos que a fun¸c˜ao possua. Em geral os polin´omios s˜ao a escolha mais frequente, pois s˜ao f´aceis de avaliar, diferenciar e integrar (ao contr´ario das s´eries trigonom´etricas ou exponenciais).
Dados: f (x0) = f0, f (x1) = f1, ... f (xn) = fn Encontra : f (x) para x ∈ [x0, xn].
Utiliza-se para: calcular valores intermedi´arios de fun¸c˜oes, deriva¸c˜ao num´erica e integra¸c˜ao num´erica, optimiza¸c˜ao
Seja um conjunto finito de pontos distintos x0, ..., xn (n´os de interpola¸c˜ao) e os
valores associados de uma fun¸c˜ao f0, ..., fn. Queremos encontrar um polin´omio
p (x) tal que
p (xi) = fi, i = 0, ..., n, ou seja, sendo o polin´omio p (x) definido por
p(x) = a0 + a1x + a2x2 + ... + amxm, a0, ..., am ∈
R
o nosso objectivo ´e determinar os coeficientes a0, ..., am ∈
R
a partir dos pontos dados (xi, fi) , i = 1, ..., n.Substitu´ındo os n´os (xi, fi) , i = 1, ..., n em p (x) obtemos o seguinte sistema linear com n equa¸c˜oes e m inc´ognitas:
⎧ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎩ a0 + a1x0 + a2x20 + ... + amxm0 = f0 a0 + a1x1 + a2x21 + ... + amxm1 = f1 ... a0 + a1xn + a2x2n + ... + amxmn = fn . (1)
O sistema ´e poss´ıvel e determinado se m = n (caso que vamos considerar). Escrevemos o sistema em forma matricial, isto ´e,
AX = B ⇔ ⎡ ⎢ ⎢ ⎢ ⎣ 1 x0 . . . xn0 1 x1 . . . xn1 ... ... ... ... 1 xn . . . xnn ⎤ ⎥ ⎥ ⎥ ⎦ ⎡ ⎢ ⎢ ⎢ ⎣ a0 a1 ... an ⎤ ⎥ ⎥ ⎥ ⎦ = ⎡ ⎢ ⎢ ⎢ ⎣ f0 f1 ... fn ⎤ ⎥ ⎥ ⎥ ⎦
onde a matriz A(n×n) designa-se por matriz de Vandermonde. A existˆencia e unicidade do polin´omio interpolador ´e equivalente com o facto de o sistema ser
0 n
sendo r a caracter´ıstica da matriz A).
Teorema 1: Dados (n + 1) n´os, x0, ..., xn e os respectivos valores f0, ..., fn,
existe um e um s´o polin´omio interpolador de grau menor ou igual que n, para esses valores.
Com outras palavras, se temos s´o um ponto (x0, y0) ent˜ao o ´unico polin´omio de grau zero que interpola o ponto ´e a recta horinzontal p (x) = y0. Se temos dois pontos (n´os), ent˜ao o ´unico polin´omio de grau (no m´aximo) 1 ´e a recta que une os dois n´os. Analogamente, s´o podemos construir uma ´unica par´abola entre trˆes pontos distintos.
- Interpola¸c˜ao linear p (x) = a0 + a1x = f0 + (f1 − f0) x−x0
- Interpola¸c˜ao quadr´atica p (x) = a0 + a1x + a2x2 - Interpola¸c˜ao c´ubica p (x) = a0 + a1x + a2x2 + a3x3
- A resolu¸c˜ao do sistema (1) pode ser demorada e usa muitos flops em termos computacionais.
- As matrizes de tipo Vandermonde geram solu¸c˜oes bastante imprecisas.
- Para evitar estes factos consideram-se polin´omios com propriedades especiais que permitem interpolar de forma mais eficiente.
F´ormula de Lagrange
• Muito mais econ´omico em termos computacionais (menos flops que o m´etodo de Vandermonde)
• A obten¸c˜ao de p (x) n˜ao ´e muito eficiente
• Muito dif´ıcil na estima¸c˜ao dos erros
Polin´omio de Lagrange: Dados (n + 1) n´os, x0, ..., xn e os respectivos valores
li (x) =
(
1 se i = j 0 se i 6= j .
Fixando i e variando j = 0, ..., n obtemos uma express˜ao explicita dos polin´omios de Lagrange xj ´e ra´ız de li se i 6= j ⇒ li (x) = ci n Y j=0,j6=i ³ x − xj ´ , onde a constante ci pode determinar-se, pois li(xi) = 1, o que implica
ci = n 1 Y j=0,j6=i ³ xi − xj´ .
Obtem-se ent˜ao que li (x) = n Y j=0,j6=i à x − xj xi − xj ! = = (x − x0) (x − x1) ... (x − xi−1) (x − xi+1) ... (x − xn) (xi − x0) (xi − x1) ... (xi − xi−1) (xi − xi+1) ... (xi − xn), i = 0, ..., n.
Considerando agora a formula interpoladora de Lagrange, isto ´e, pn (x) = f0l0 (x) + f1l1 (x) + ... + fnln (x) ,
obtem-se que pn (xi) = fi.
Para n = 1 e 2 obtem-se interpola¸c˜ao linear pn (x) = f0l0 (x) + f1l1 (x) e
• Exemplo: Dados os pontos −→x = (x0, x1, x2) = (2, 6, 7) e as suas imagens f = (f0, f1, f2) = (−1, 8, −3), determine um polin´omio interpolador de grau dois que passe por estes pontos
x f 2 −1 6 8 7 −3
l0 (x) = (x − x1) (x − x2) (x0 − x1) (x0 − x2) = (x − 6) (x − 7) (2 − 6) (2 − 7) = (x − 6) (x − 7) 20 l1 (x) = (x − x0) (x − x2) (x1 − x0) (x1 − x2) = (x − 2) (x − 7) (6 − 2) (6 − 7) = (x − 2) (x − 7) −4 l2 (x) = (x − x0) (x − x1) (x2 − x0) (x2 − x1) = (x − 2) (x − 6) (7 − 2) (7 − 6) = (x − 2) (x − 6) 5 p2 (x) = −1(x − 6) (x − 7) 20 + 8 (x − 2) (x − 7) −4 − 3 (x − 2) (x − 6) 5 = −53 20x 2 + 469 20 x − 373 10
1 2 3 4 5 6 7 8 -4 -2 0 2 4 6 8 10 12 14
• Erro de interpola¸c˜ao, num certo ponto x: en (x) = f (x) − pn (x)
• Teorema : Seja f uma fun¸c˜ao real de vari´avel real de classe Cn+1 no intervalo Ix¯ = [¯x, x0, x1, ..., xn], (Ix¯ designa o menor intervalo fechado que
cont´em os pontos ¯x, x0, x1, ..., xn). Ent˜ao existe um ξ ∈ Ix¯ tal que
en (¯x) = f (¯x) − pn (¯x) = ψ (¯x)
(n + 1)!f
n+1 (ξ)
• Muito eficiente quando os polin´omios s˜ao de grau baixo
• Estima¸c˜ao rigorosa do erro
• F´ormula interpoladora de Newton com diferen¸cas divididas (raz˜oes incre-mentais que constituem aproxima¸c˜oes discretas de derivadas)
pn (x) = f [x0]+f [x0, x1] (x − x0)+...+f [x0, x1, ..., xn] (x − x0) ... (x − xn−1) onde f[xi, xj] = ³ fi − fj´ ³ xi − xj´
´e a diferen¸ca dividida de 1a ordem e
f[xi, ..., xi+k] = f[xi+1, ..., x¡i+k] − f[xi, ..., xi+k−1] xi+k − xi¢
´e uma diferen¸ca dividida de ordem k.
Para n = 1 obtem-se interpola¸c˜ao linear
p1 (x) = f (x0) + f [x0, x1] (x − x0) ; f [x0, x1] = f (x1) − f (x0) x1 − x0
Para n = 2 obtem-se interpola¸c˜ao quadr´atica
p2 (x) = f (x0) + f [x0, x1] (x − x0) + f [x0, x1, x2] (x − x0) (x − x1) f[x0, x1, x2] = f[x1, x2] − f[x0, x1]
Erro de interpola¸c˜ao
O erro de interpola¸c˜ao, num certo ponto x ´e εn (x) = f (x) − pn (x) . Se con-sideremos x como um novo n´o de interpola¸c˜ao obtem-se
εn (x) = f [x0, ..., xn, x] (x − x0) ... (x − xn) .
Seja V um intervalo que contenha os n´os x0, ..., xn, x. Se a fun¸c˜ao f fˆor de classe Cn+1(V ) ent˜ao temos a seguinte f´ormula para o erro de interpola¸c˜ao:
∃η ∈ V : εn (x) = f (n+1) (η) (n + 1)! n Y k=0 (x − xk) .
Uma barra de ferro ´e arrefecida desde 80 at´e -340o F. A tabela abaixo representa a temperatura vs. o coeficiente de expans˜ao termal em v´arios momentos do processo de arrefecimento. Determine o coeficiente de expans˜ao termal para a temperatura de -17o C, utilizando algum m´etodo de interpola¸c˜ao:
2.45 x 10-6 -340 3.58 x 10-6 -260 4.72 x 10-6 -160 5.58 x 10-6 -60 6.00 x 10-6 0 6.47 x 10-6 80 Coeficiente de Expansão Termal (cm/oF) Temperatura (oF) 2.45 x 10-6 -340 3.58 x 10-6 -260 4.72 x 10-6 -160 5.58 x 10-6 -60 6.00 x 10-6 0 6.47 x 10-6 80 Coeficiente de Expansão Termal (cm/oF) Temperatura (oF)
Coef ficient of Therm al Expansion vs Tem epar ture
0 1 2 3 4 5 6 7 -400 -300 -200 -100 0 100 200
Tem pear ture (F)
C o e ffi ci e n t o f T h er m a l E x p a n s io n 1 0 ^ -6 ( in /in /F )
• M´etodo Directo: Interpola¸c˜ao linear α (t) = a0 + a1T ( α (0) = a0 + a1 (0) = 6.00 · 10−6 α (−60) = a0 + a1 (−60) = 5.58 · 10−6 → ( a0 = 6.00 · 10−6 a1 = 0.007 · 10−6 → ( α(T ) = 6.00 · 10−6 + 0.007 · 10−6T, −60 ≤ T ≤ 0 α (−14) = 6.00 · 10−6 + 0.007 · 10−6(−14) = 5.902 · 10−6
50 45 40 35 30 25 20 15 10 5.5 5.6 5.7 5.8 5.9 5.58 ys f range( ) f x( desired) xs 1+10 xs 0−10 xs,range,xdesired
Interpola¸c˜ao quadr´atica α (t) = a0 + a1T + a2T2 ⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ α (80) = a0 + a1 (80) + a2 (80)2 = 6.47 · 10−6 α(0) = a0 + a1 (0) + a2 (0)2 = 6.00 · 10−6 α (−60) = a0 + a1 (−60) + a2 (−60)2 = 5.58 · 10−6 → ⎧ ⎪ ⎨ ⎪ ⎩ a0 = 6.00 · 10−6 a1 = 6.517 · 10−9 a2 = −8.035 · 10−12 → ⎧ ⎪ ⎨ ⎪ ⎩ α (T ) = 6.00 · 10−6 + 6.517 · 10−9T − 8.035 · 10−12T2, −60 ≤ T ≤ α (−14) = 6.00 · 10−6 + 6.517 · 10−9(−14) − 8.035 · 10−12 (−14) = 5.9072 · 10−6 |εa| = ¯ ¯ ¯ ¯ ¯ 5.9072 · 10−6 − 5.902 · 10−6 5.9072 · 10−6 ¯ ¯ ¯ ¯
60 40 20 0 20 40 60 80 5.4 5.6 5.8 6 6.2 6.4 5.58 ys f range( ) f x( desire d) 80 60 − xs,range,xdesired
Tabela de compara¸c˜ao
Ordem do polin´omio 1 2 3
Coeficient de Exp. Termal 5.902 · 10−6 5.9072 · 10−6 5.9077 · 10−6
• F´ormula de Newton: Interpola¸c˜ao linear α(T ) = b0 + b1 (T − T0) T0 = 0, α (T0) = 6.00 · 10−6, T1 = −60, α (T1) = 5.58 · 10−6 b0 = α (T0) = 6.00 · 10−6, b1 = α(T1) − α (T0) T1 − T0 = = 5.58 · 10−6 − 6.00 · 10−6 −60 − 0 = 0.007 · 10 −6 α(T ) = 6.00 · 10−6 + 0.007 · 10−6 (T − 0) , −60 ≤ T ≤ 0 α (−14) = 6.00 · 10−6 + 0.007 · 10−6 (−14 − 0) = 5.902 · 10−6 cm/cm/oF
Interpola¸c˜ao Quadr´atica α(T ) = b0 + b1 (T − T0) + b2 (T − T0) (T − T1) T0 = 80, α (T0) = 6.47 · 10−6, T1 = 0, α (T1) = 6.00 · 10−6 T2 = −60, α (T2) = 5.58 · 10−6 b0 = α (T0) = 6.47 · 10−6, b1 = α (T1) − α (T0) T1 − T0 = 6.00 · 10−6 − 6.47 · 10−6 0 − 80 = 5.875 · 10 −9 b2 = α(T2)−α(T1) T2−T1 − α(T1)−α(T0) T1−T0 T2 − T0 = 0.007 · 10−6 − 0.005875 · 10−6 −140 = −8.0357 · 10−12 α(T ) = 6.47 · 10−6 + 5.587 · 10−9 (T − 80) − 8.0357 · 10−12 (T − 80) (T − 0 −60 ≤ T ≤ 80 α (−14) = 6.47 · 10−6 + 5.587 · 10−9 (−14 − 80) − 8.0357 · 10−12 (−14 − 80) ( = 5.9072 · 10−6 cm/cm/oF
|εa| = ¯ ¯ ¯ ¯ ¯ 5.9072 · 10−6 − 5.902 · 10−6 5.9072 · 10−6 ¯ ¯ ¯ ¯ ¯ · 100 = 0.08761%,
Erro relativo absoluto
Tabela de compara¸c˜ao
Ordem do polin´omio 1 2 3
Coeficient de Exp. Termal 5.902 · 10−6 5.9072 · 10−6 5.9077 · 10−6
Aproxima¸c˜ao dos m´ınimos quadrados: Caso dos dados discretos
Seja {(x1, y1) , ..., (xm, ym)} um conjunto de pares de n´umeros reais, onde cada
yi, i = 1, ..., m foi obtido de forma experimental e aproxima o valor de uma fun¸c˜ao f no n´o xi, i = 1, ..., m, isto ´e yi ≈ f (xi) , i = 1, ..., m.
O objectivo ´e construir uma aproxima¸c˜ao para f usando como dados os pares de valores dados (xi, yi) , i = 1, ..., m.
Uma vez que os valores s˜ao obtidos experimentalmente, o seu erro ´e descon-hecido. O uso de interpola¸c˜ao de Lagrange n˜ao ´e aconselhada nesta situa¸c˜ao pois, o polin´omio interpolador deveria passar pelos pontos (xi, f (xi)) , i = 1, ..., m, que n˜ao s˜ao conhecidos exactamente.
i i i i
mais sentido fazer passar a fun¸c˜ao aproximadamente “perto” dos pontos (xi, yi). O que est´a em causa ´e encontrar a recta de regress˜ao p1 (x) = ax + b (para simplicidadde, ou outra curva), dependente dos parˆametros a e b, que melhor se ajusta (nalgum sentido) aos dados.
Por exemplo:
(i) Problema minimax: a e b s˜ao determinados por forma a minimizar max
(ii) Problema do desvio absoluto: a e b s˜ao determinados por forma a minimizar
m
X
i=1
|yi − (axi + b)|
(iii) Problema do erro quadr´atico total (m´etodo dos m´ınimos quadrados): a e b s˜ao determinados por forma a minimizar
m X i=1 [yi − (axi + b)]2 Portanto tem-se min a,b ⎛ ⎝E (a, b) = m X i=1 [yi − (axi + b)]2 ⎞ ⎠
ou seja, que a e b verifiquem o seguinte sistema linear (de equa¸c˜oes normais): ⎧ ⎪ ⎨ ⎪ ⎩
aPmi=1 (xi)2 + bPi=1m (xi) = Pmi=1 (xiyi) aPmi=1 (xi) + bm = Pmi=1(yi)
O problema mais geral de aproximar um conjunto de pontos por um polin´omio alg´ebrico, pn (x) = Pnk=0 akxk, de grau n ≤ m − 1, usando a aproxima¸c˜ao
dos m´ınimos quadrados ´e concretizada usando um racioc´ınio idˆentico ao atr´as descrito para o caso linear e requer a determina¸c˜ao dos parˆametros a0, a1, ..., an
que minimizam o erro quadr´atico total E (a0, a1, ..., an) =
m
X
i=1
Na pr´atica uma grande parte dos problemas envolvem polin´omios de baixo grau. Nas situa¸c˜oes onde s˜ao necess´arios polin´omios de grau mais elevado existem t´ecnicas alternativas envolvendo a reformula¸c˜ao do polin´omio em termos de polin´omios ortogonais, ou a utiliza¸c˜ao de outras fun¸c˜oes aproximantes (expo-nenciais, logaritmicas, etc).