Ajuste de curvas através de minı́mos quadrados Ajuste de Curvas por Polinômios com a Utilização do Método de Mı́nimos Quadrados João Vitor Hauck, Johnny Gomes e Joventino Campos Universidade Federal de Juiz de Fora 1 Introdução O processo de ajuste de curvas aos dados experimentais é um procedimento de grande utilidade prática, devido a facilidade de obtenção de tais dados para muitos problemas e a necessidade de se ajustar determinado modelo proposto para o fenômeno em estudo. Apesar disto, existem alguns inconvenientes comuns que precisam ser tratados: frequentemente, os dados experimentais contém erros aos quais nosso modelo não pode se ajustar de forma rı́gida. Por isso, para o caso em que deseja-se aproximar curvas por polinômios, é desejada uma metodologia que possibilite a escolha do grau do polinômio utilizado de maneira automática, de modo que o mesmo se ajuste aos dados experimentais sem que, para tanto, os erros de medição sejam fortemente levados em consideração. 2 Metodologia Seja m + 1 o número de dados experimentais, e (xi , yi ) com i, j ∈ {0, 1, ..., m − 1} os pares ordenados obtidos experimentalmente. Considerando-se um polinômio de grau n, exato para o dados experimentais em questão, temos que as m equações abaixo são satisfeitas, onde a0 , a1 , ..., an são os coeficientes do polinômio considerado, ou seja, P(x) = a0 + a1 x + a2 x2 + ... + an xn . a0 + a1 x01 ...an x0n = y0 (1) a0 + a1 x11 ...an x1n = y1 .. . (2) = ym−1 (4) 1 n a0 + a1 xm−1 ...an xm−1 (3) Como usualmente n < m, ou seja, não desejamos um polinômio que passe exatamente por todos os pontos experimentais de modo a evitarmos o ajuste ao erro (overfitting), o sistema acima é não quadrado, possuindo mais equações do que incógnitas. Deste modo, podemos buscar uma solução (a0 , a1 , ..., an ) tal que o resı́duo r, definido por ??, seja o menor possı́vel. r= q (P(x0 ) − y0 )2 + (P(x1 ) − y1 )2 + ... + (P(xm ) − ym )2 (5) Tal procedimento de se determinar os parâmetros de uma equação de modo que o resı́duo definido em ?? seja mı́nimo é denominado método dos mı́nimos quadrados. No nosso caso, os parâmetros são coeficientes de um polinômio P(x), cujo grau, a ser determinado previamente, é n. Para se escolher n tal que a aproximação seja satisfatória, sem cometer overfitting, utilizamos o método da variância. É possivel 1 demonstrar que, ao negligenciarmos erros de aproximação, vn = m−n ((P(x0 ) − y0 )2 + (P(x1 ) − y1 )2 + ... + (P(xm ) − ym )2 ) torna-se uma boa aproximação para a variância v do ruı́do, dada pela equação ?? (veja [?]). O ruı́do ei é tal que, para a medida yi pode-se escrever yi = σ(xi ) + ei , onde σ(xi ) seria o valor da função de background, ou seja, o valor real da função em estudo (desconhecida, a princı́pio), sem considerar-se o erro de medição inerente a yi . 1 Ajuste de curvas através de minı́mos quadrados Figura 1: Polinômio obtido frente aos dados experimentais de variância pequena Figura 2: Polinômio obtido frente aos dados experimentais de variância grande v= 1 m−1 ∑ ei m i=0 (6) O método da variância consiste em buscar o grau n, calculando-se vn para cada valor de n considerado desde n = 1. Sob certas hipóteses estatı́sticas, vn > v para n pequeno, e seu valor é reduzido conforme o valor de n é incrementado. Quando vn estabilizar-se, ou seja, vn+1 ' vn , teremos encontrado n tal que, para graus superiores, o nı́vel dos erros de aproximação seja menor que o nı́vel do ruı́do. 3 Experimentos Computacionais Implementamos um algorı́tmo na linguagem C++ que utiliza o método da variância (descrito na seção anterior) para determinar o grau n ótimo e os coeficientes de um polinômio que venha a ajustar dados experimentais fornecidos por outro grupo de alunos. Utilizamos uma biblioteca de funções matemáticas que implementa o método de mı́nimos quadrados para encontrar soluções aproximadas de sistemas de m equações e n incógnitas, com m > n. Em nosso caso, m é o número de dados experimentais para a curva em questão, e n é o grau do polinômio considerado. Consideramos para o método da variância uma tolerância de 0.01, ou seja, caso vn+1 − vn <= 0.01, consideramos que vn chegou ao estado de estabilização. A saı́da do programa implementado é o grau n obtido pelo método da variância e o polinômio correspondente. Os dados utilizados são compostos de 50 pontos, dispostos em duas diferentes versões: uma contendo ruı́do pequeno (baixa variância), e outra contendo ruı́do elevado (alta variância). Para o primeiro caso, o grau do polinômio obtido foi 4 e, para o segundo, o grau obtido foi 3. As figuras 1 e 2 mostram a plotagem dos polinômios gerados frente aos dados experimentais. As figuras 3 e 4 mostram o resı́duo ponto a ponto para o polinômio obtido em cada um dos casos. . 4 Conclusão O ajuste de curvas por polinômios é vantajoso no sentido de fornecer funções de fácil tratamento matemático. A interpolação direta dos dados experimentais força que a curva obtida carregue em si os eventuais erros provenientes do processo de medida. O método da variância conjugado ao método dos mı́nimos quadrados fornece uma metodologia consistente para a escolha e determinação de um polinômio que represente matematicamente o fenômeno em estudo, sem que para isso os erros aleatórios de medição sejam fortemente considerados no processo de ajuste. Referências [1] Kaj Madsen and Hans Bruun Nielsen, ”Supplementary Notes for Optimization and Data Fitting”, Fourth Edition, 2005 Figura 3: Resı́duos ponto a ponto para o caso de variância pequena 2 Ajuste de curvas através de minı́mos quadrados Figura 4: Resı́duos ponto a ponto para o caso de variância grande 3