Regressão Polinomial
Podemos estender os conceitos da Regressão Linear e aproximar função de grau igual a maior que 2.
A função seria dada por:
\[g(x) = a_ng_n(x) + a_{n-1}g_{n-1}(x) + \ldots + a_1g(x) \]Ou:
\[g(x) = a_nx^n + a_{n-1}x^{n-1} + \ldots + a_1x + a_0 \]Onde teremos o sistema linear:
Ou em forma de matriz:
\[ \left[\begin{matrix} n & \sum{x_i} & \ldots &\sum{x_i^n} \\ \sum{x_i} & \sum{x_i^2}& \ldots &\sum{x_i^{n+1}} & \\ \sum{x_i^2} & \sum{x_i^3}& \ldots &\sum{x_i^{n+2}} & \\ \vdots \\ \sum{x_i^m} & \sum{x_i^{m+1}}& \ldots &\sum{x_i^{n+m}} & \\ \end{matrix} \right.\left| \begin{matrix} \sum{y_i} \\ \sum{x_iy_i} \\ \sum{x_i^2y_i} \\ \vdots \\ \sum{x_i^my_i} \end{matrix} \right] \]Exemplo 1
Dados os pontos abaixo, iremos calcular a função de aproximação de grau 2:
| x | \( 0\) | \( 1.5\) | \( 4.5\) | \( 8\) | \( 9\) |
|---|---|---|---|---|---|
| y | \(1\) | \(-2\) | \(2.5\) | \(1.4\) | \(-2.1\) |
Construímos a tabela dos valores de \(x\):
| \(i\) | \(x_i\) | \(x_i^2\) | \(x_i^3\) | \(x_i^4\) | |
|---|---|---|---|---|---|
|   | 1 | \(0\) | \(0^2 = 0\) | \(0^3 = 0\) | \(0^4 = 0\) |
|   | 2 | \(1.5\) | \(1.5^2 = 2.25\) | \(1.5^3 = 3.375\) | \(1.5^4 = 5.0625\) |
|   | 3 | \(4.5\) | \(4.5^2 = 20.25\) | \(4.5^3 = 91.125\) | \(4.5^4 = 410.062\) |
|   | 4 | \(8\) | \(8^2 = 64\) | \(8^3 = 512\) | \(8^4 = 4096\) |
|   | 5 | \(9\) | \(9^2 = 81\) | \(9^3 = 729\) | \(9^4 = 6561\) |
| \(\sum\) | \(\color{red}{5}\) | \(\color{blue}{23}\) | \(\color{green}{167.5}\) | \(\color{orange}{1335.5}\) | \(\color{purple}{11072.1}\) |
E a tabela de valores de \(y\):
| \(i\) | \(x_i\) | \(y_i\) | \(x_iy_i\) | \(x_i^2y_i\) | |
|---|---|---|---|---|---|
|   | \(1\) | \(0\) | \(1\) | \(0 \times 1 = 0\) | \((0^2) \times 1 = 0\) |
|   | \(2\) | \(1.5\) | \(-2\) | \(1.5 \times -2 = -3\) | \((1.5^2) \times -2 = -4.5\) |
|   | \(3\) | \(4.5\) | \(2.5\) | \(4.5 \times 2.5 = 11.25\) | \((4.5^2) \times 2.5 = 50.625\) |
|   | \(4\) | \(8\) | \(1.4\) | \(8 \times 1.4 = 11.2\) | \((8^2) \times 1.4 = 89.6\) |
|   | \(5\) | \(9\) | \(-2.1\) | \(9 \times -2.1 = -18.9\) | \((9^2) \times -2.1 = -170.1\) |
| \(\sum\) |   |   | \(\color{yellow}{\colorbox{black}{0.8}}\) | \(\color{green}{\colorbox{black}{0.55}}\) | \(\color{orange}{\colorbox{black}{-34.375}}\) |
O sistema linear genérico para esse caso ficaria:
\[ \left[\begin{matrix} n & \sum{x_i} & \sum{x_i^2} \\ \sum{x_i} & \sum{x_i^2} & \sum{x_i^3} & \\ \sum{x_i^2} & \sum{x_i^3} & \sum{x_i^4} & \\ \end{matrix} \right.\left| \begin{matrix} \sum{y_i} \\ \sum{x_iy_i} \\ \sum{x_i^2y_i} \end{matrix} \right] \]E preenchendo os valores:
\[ \left[\begin{matrix} \color{red}{5} &\color{blue}{23} &\color{green}{167.5} & \\ \color{blue}{23} &\color{green}{167.5} &\color{orange}{1335.5} & \\ \color{green}{167.5} &\color{orange}{1335.5} &\color{purple}{11072.1} & \\ \end{matrix} \right.\left| \begin{matrix} \color{yellow}{\colorbox{black}{0.8}} \\ \color{green}{\colorbox{black}{0.55}} \\ \color{orange}{\colorbox{black}{-34.375}} \\\end{matrix} \right] \]E resolvendo o sistema, temos:
\[ \left[\begin{matrix} 1 &0 &0 & \\ 0 &1 &0 & \\ 0 &0 &1 & \\ \end{matrix} \right.\left| \begin{matrix} -0.583355 \\0.986469 \\-0.113266 \end{matrix} \right] \]Que resulta na nossa função de interpolação:
\[g(x) = -0.11327x^2 + 0.98647x - 0.58336\]E o resultado no gráfico:
Exemplo 2
Serão utilizados os mesmos pontos, porém iremos calcular a função de aproximação de grau 3
| x | \( 0\) | \( 1.5\) | \( 4.5\) | \( 8\) | \( 9\) |
|---|---|---|---|---|---|
| y | \(1\) | \(-2\) | \(2.5\) | \(1.4\) | \(-2.1\) |
Tabela dos valores de \(x\):
| \(i\) | \(x_i\) | \(x_i^2\) | \(x_i^3\) | \(x_i^4\) | \(x_i^5\) | \(x_i^6\) | |
|---|---|---|---|---|---|---|---|
|   | 1 | \(0\) | \(0^2 = 0\) | \(0^3 = 0\) | \(0^4 = 0\) | \(0^5 = 0\) | \(0^6 = 0\) |
|   | 2 | \(1.5\) | \(1.5^2 = 2.25\) | \(1.5^3 = 3.375\) | \(1.5^4 = 5.0625\) | \(1.5^5 = 7.59375\) | \(1.5^6 = 11.3906\) |
|   | 3 | \(4.5\) | \(4.5^2 = 20.25\) | \(4.5^3 = 91.125\) | \(4.5^4 = 410.062\) | \(4.5^5 = 1845.28\) | \(4.5^6 = 8303.77\) |
|   | 4 | \(8\) | \(8^2 = 64\) | \(8^3 = 512\) | \(8^4 = 4096\) | \(8^5 = 32768\) | \(8^6 = 262144\) |
|   | 5 | \(9\) | \(9^2 = 81\) | \(9^3 = 729\) | \(9^4 = 6561\) | \(9^5 = 59049\) | \(9^6 = 531441\) |
| \(\sum\) | \(\color{red}{5}\) | \(\color{blue}{23}\) | \(\color{green}{167.5}\) | \(\color{orange}{1335.5}\) | \(\color{purple}{11072.1}\) | \(\color{Maroon}{93669.9}\) | \(\color{RedViolet}{801900}\) |
Tabela de valores de \(y\):
| \(i\) | \(x_i\) | \(y_i\) | \(x_iy_i\) | \(x_i^2y_i\) | \(x_i^3y_i\) | |
|---|---|---|---|---|---|---|
|   | \(1\) | \(0\) | \(1\) | \(0 \times 1 = 0\) | \((0^2) \times 1 = 0\) | \((0^3) \times 1 = 0\) |
|   | \(2\) | \(1.5\) | \(-2\) | \(1.5 \times -2 = -3\) | \((1.5^2) \times -2 = -4.5\) | \((1.5^3) \times -2 = -6.75\) |
|   | \(3\) | \(4.5\) | \(2.5\) | \(4.5 \times 2.5 = 11.25\) | \((4.5^2) \times 2.5 = 50.625\) | \((4.5^3) \times 2.5 = 227.812\) |
|   | \(4\) | \(8\) | \(1.4\) | \(8 \times 1.4 = 11.2\) | \((8^2) \times 1.4 = 89.6\) | \((8^3) \times 1.4 = 716.8\) |
|   | \(5\) | \(9\) | \(-2.1\) | \(9 \times -2.1 = -18.9\) | \((9^2) \times -2.1 = -170.1\) | \((9^3) \times -2.1 = -1530.9\) |
| \(\sum\) |   |   | \(\color{yellow}{\colorbox{black}{0.8}}\) | \(\color{green}{\colorbox{black}{0.55}}\) | \(\color{orange}{\colorbox{black}{-34.375}}\) | \(\color{SpringGreen}{\colorbox{black}{-593.038}}\) |
Construindo a matriz do sistema linear:
\[ \left[\begin{matrix} n & \sum{x_i} & \sum{x_i^2} & \sum{x_i^3} \\ \sum{x_i} & \sum{x_i^2} & \sum{x_i^3} & \sum{x_i^4} \\ \sum{x_i^2} & \sum{x_i^3} & \sum{x_i^4} & \sum{x_i^5} \\ \sum{x_i^3} & \sum{x_i^4} & \sum{x_i^5} & \sum{x_i^6} \\ \end{matrix} \right.\left| \begin{matrix} \sum{y_i} \\ \sum{x_iy_i} \\ \sum{x_i^2y_i} \\ \sum{x_i^3y_i} \end{matrix} \right] \]Com os valores:
\[ \left[\begin{matrix} \color{red}{5} &\color{blue}{23}\ &\color{green}{167.5} &\color{orange}{1335.5} & \\ \color{blue}{23}\ &\color{green}{167.5} &\color{orange}{1335.5} &\color{purple}{11072.1}1 & \\ \color{green}{167.5} &\color{orange}{1335.5} &\color{purple}{11072.1} &\color{Maroon}{93669.9} & \\ \color{orange}{1335.5} &\color{purple}{11072.1} &\color{Maroon}{93669.9} &\color{RedViolet}{801900} & \\ \end{matrix} \right.\left| \begin{matrix} \color{yellow}{\colorbox{black}{0.8}} \\ \color{green}{\colorbox{black}{0.55}} \\ \color{orange}{\colorbox{black}{-34.375}} \\ \color{SpringGreen}{\colorbox{black}{-593.038}} \end{matrix} \right] \]E resolvendo o sistema, temos:
\[ \left[\begin{matrix} 1 &0 &0 &0 & \\ 0 &1 &0 &0 & \\ 0 &0 &1 &0 & \\ 0 &0 &0 &1 & \\ \end{matrix} \right.\left| \begin{matrix} 0.805668 \\-3.19947 \\1.22967 \\-0.101543 \\\end{matrix} \right] \]Que resulta na nossa função de interpolação:
\[g(x) = -0.10154x^3 + 1.2297x^2 - 3.1995x + 0.80567\]E o gráfico:
Dica de programação em HP PPL
Para realizar as somas em HP PPL, foi implementado o programa:
EXPORT Somatorias()
BEGIN
LOCAL graus := 3; // Grau desejado na função de aproximação
LOCAL i, j;
M1:=[[0, 1.5, 4.5, 8, 9],
[1,−2, 2.5, 1.4, −2.1]];
M8:=[[0]]; // Local de armazenamento dos valores de X
M9:=[[0]]; // Local de armazenamento dos valores de Y
FOR i FROM 1 TO 5 DO // 5 linhas
FOR j FROM 0 TO graus * 2 DO
IF (M1(1, i) = 0 AND j = 0) THEN
M8(i, j+1) := 1;
ELSE
M8(i, j+1) := M1(1, i) ^ j;
END;
END;
FOR j FROM 0 TO graus DO
IF (M1(1, i) = 0 AND j = 0) THEN
M9(i, j+1) := M1(2, i);
ELSE
M9(i, j+1) := M1(2, i) * M1(1, i) ^ j;
END;
END;
END;
L1 := CAS.ΣLIST(M8); //Armazena os valores das somatórias de X na lista da calculadora L1
L2 := CAS.ΣLIST(M9); // E de Y em L2
END;
Atividade
Dado os pontos, determine a função de aproximação solicitada para cada item
-
Função de Grau 2 para os pontos:
x \( 2\) \( 4\) \( 10\) \( 14\) y \(2\) \(10.4\) \(21.1\) \(26.5\) -
Função de Grau 3
x \( 3\) \( 11\) \( 13\) \( 23\) \( 25\) \( 32\) y \(-22\) \(-257.6\) \(-347.2\) \(-1078.6\) \(-1271.7\) \(-2083.1\) -
Função de Grau 4
x \( -2\) \( 4\) \( 7\) \( 14\) \( 16\) y \(-18\) \(94.9\) \(571.3\) \(5071.9\) \(7649.7\)