{ "metadata": { "name": "" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Caso geral do MMQ\n", "Seja $\\mathbf{T}=\\{(x_0,y_0),\\dots , (x_k,y_k)\\}$ uma tabela regular e $\\{g_0,\\dots , g_n\\}$ uma fam\u00edlia de fun\u00e7\u00f5es $g_i: I \\to \\mathbb{R}$. O problema geral de MMQ \u00e9 encontrar uma fun\u00e7\u00e3o $g$ que seja combina\u00e7\u00e3o linear da fam\u00edlia $\\{g_i\\}$ e que minimize o res\u00edduo quadr\u00e1tico em rela\u00e7\u00e3o \u00e0 tabela $\\mathbf{T}$. Lembro que $\\text{Res}(g,\\mathbf{T})=\\sum_{j=0}^k (g(x_j)-y_j)^2$.\n", "\n", "## Solu\u00e7\u00e3o exata\n", "Note que o res\u00edduo ser\u00e1 zero se, e somente se, tivermos $g(x_j) = y_j$ para todo $0\\leq j\\leq k$. e isto equivale a dizer que existem n\u00fameros $a_0,\\dots , a_n$ tais que $\\sum_{i=0}^n a_ig_i(x_j) = y_j$ pra todo $j \\in \\{0,\\dots,k\\}$. Uma outra interpreta\u00e7\u00e3o desta equa\u00e7\u00e3o \u00e9 que o vetor coluna\n", "$$ \\mathbf{a} = \\begin{bmatrix} a_0 \\\\ \\vdots \\\\ a_n \\end{bmatrix} $$\n", "satisfaz o sistema linear $P\\mathbf{a} = \\mathbf{y}$ onde\n", "$$ P = \\begin{pmatrix} g_0(x_0) & g_1(x_0) & \\cdots & g_n(x_0) \\\\\n", "\\vdots & \\vdots & \\vdots & \\vdots \\\\\n", "g_0(x_k) & g_1(x_k) & \\dots & g_n(x_k) \\end{pmatrix} \\text{ e } \\mathbf{y} =\\begin{pmatrix} y_0 \\\\ \\vdots \\\\ y_k \\end{pmatrix} $$\n", "Chamaremos esta matriz $P$ de *matriz de projeto* do problema de MMQ.\n", "\n", "## Sistema normal\n", "Se todas as colunas da matriz $P$ forem li diremos que o problema tem posto m\u00e1ximo e a solu\u00e7\u00e3o do problema geral \u00e9 encontrada resolvendo o sistema normal $A\\mathbf{a} = \\mathbf{b}$ onde a matriz $A$ tem os coeficientes $a_{ij} = \\langle g_i , g_j \\rangle = \\sum_{l=0}^kg_i(x_l)g_j(x_l)$ e $b_i = \\sum_{l=0}^k y_lg_i(x_l) = \\langle \\mathbf{y},g_i \\rangle$ " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## As fun\u00e7\u00f5es `polyfit()` e `lstsq()` do **NUMPY**\n", "A primeira fun\u00e7\u00e3o recebe como par\u00e2metros os pontos da tabela e o grau do polin\u00f4mio e devolve uma lista com os coeficientes do polin\u00f4mio." ] }, { "cell_type": "code", "collapsed": false, "input": [ "import numpy as np\n", "tabela = [(0,1),(1,2.3),(2,5.4),(3,-1), (4,-5.5)]\n", "x = np.array([p[0] for p in tabela])\n", "y = np.array([p[1] for p in tabela])\n", "z = np.polyfit(x,y,3)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "p = np.poly1d(z)\n", "p" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 2, "text": [ "poly1d([ 0.00833333, -1.55714286, 4.4702381 , 0.67571429])" ] } ], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "p(0)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 3, "text": [ "0.67571428571428682" ] } ], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [ "p(1)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 4, "text": [ "3.5971428571428605" ] } ], "prompt_number": 4 }, { "cell_type": "code", "collapsed": false, "input": [ "%matplotlib inline\n", "from matplotlib.pyplot import plot,grid\n", "t=np.linspace(0,4.5,100)\n", "plot(x,y,\"ro\",t,p(t))\n", "grid()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 5 }, { "cell_type": "markdown", "metadata": {}, "source": [ "A fun\u00e7\u00e3o `lstsq()` recebe como entrada a matriz de projeto $A$ que \u00e9 uma matriz $(n+1)\\times (k+1)$ e um vetor $y\\in \\mathbb{R}^{k+1}$" ] }, { "cell_type": "code", "collapsed": false, "input": [ "from numpy.linalg import lstsq\n", "f0 = lambda x: 1\n", "f1 = lambda x: np.cos(x)\n", "f2 = lambda x: np.sin(x)\n", "# vamos usar a mesma tabela anterior e construir a matriz de projeto\n", "A = np.array([[f0(u) for u in x] ,[f1(u) for u in x],[f2(u) for u in x]]).T\n", "print(A)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[[ 1. 1. 0. ]\n", " [ 1. 0.54030231 0.84147098]\n", " [ 1. -0.41614684 0.90929743]\n", " [ 1. -0.9899925 0.14112001]\n", " [ 1. -0.65364362 -0.7568025 ]]\n" ] } ], "prompt_number": 6 }, { "cell_type": "code", "collapsed": false, "input": [ "result = lstsq(A,y)\n", "result[0]" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 7, "text": [ "array([-0.7054306 , 0.66399755, 5.34945131])" ] } ], "prompt_number": 7 }, { "cell_type": "code", "collapsed": false, "input": [ "g = lambda x: result[0][0]*f0(x) + result[0][1]*f1(x) + result[0][2]*f2(x)\n", "plot(x,y, \"ro\",t,g(t))\n", "grid()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\nCWzYYB6PPhrmnvpTTz3F1q1b+f3vf8+///1vrrjiCr7++utjd6CiLiJSb2Hvqd96662sX7+e8847\njyFDhvALb9+iAAAHKElEQVTCCy/4+1Zhd/RHLlvYmEuZnFEm52zMZWMmf/m9SmNiYiJz5swJZhYR\nEQmQ1n4REbGQ1n4REZHYLOq29s9szKVMziiTczbmsjGTv2KyqIuIRCv11EVELKSeuoiIxGZRt7V/\nZmMuZXJGmZyzMZeNmfwVk0VdRCRaqacuImIh9dRFRCQ2i7qt/TMbcymTM8rknI25bMzkr5gs6iIi\n0Uo9dRERC6mnLiIisVnUbe2f2ZhLmZxRJudszGVjJn/FZFEXEYlW6qmLiFhIPXUREYnNom5r/8zG\nXMrkjDI5Z2MuGzP5KyaLuohItFJPXUTEQuqpi4iI/0V91apVXHzxxWRmZnLRRRexevXqYOYKKVv7\nZzbmUiZnlMk5G3PZmMlffhf1sWPHMnHiRIqKinjwwQcZO3ZsMHOFVHFxsdsR6mRjLmVyRpmcszGX\njZn85XdRb9OmDXv27AFg9+7dtGvXLmihQm337t1uR6iTjbmUyRllcs7GXDZm8leCv39x6tSpdO/e\nnbvvvpvq6mo+/vjjYOYSERE/HLeoZ2dnU1paesz2yZMnk5eXR15eHldddRXz5s3j1ltv5b333gtZ\n0GDauHGj2xHqZGMuZXJGmZyzMZeNmfzl95TGU089lW+//RYAn89HUlJSTTvm+1JTUykpKQkspYhI\njElJSWHdunX1/nt+t19SU1NZvnw5l19+OUuXLuXss8+u83X+hBIREf/4XdSffvppfvWrX3HgwAFO\nPvlknn766WDmEhERP4T8ilIREQmfoF1RWlBQwLnnnkvHjh2ZNm1ana8ZPXo0HTt2JD09naKiomDt\n2u9MXq+XZs2akZmZSWZmJpMmTQp5pltvvZVWrVpx3nnn/eBrwj1OJ8rkxjht2rSJnj170rlzZ7p0\n6UJeXl6drwvnWDnJFO6xKi8vp1u3bmRkZNCpUyd+97vf1fm6cI6Tk0xu/EwBVFVVkZmZyYABA+r8\nerh/95zkqvdY+YKgsrLSl5KS4tuwYYPv4MGDvvT0dN+aNWtqvSY/P9/Xt29fn8/n861cudLXrVu3\nYOw6oEzLli3zDRgwIKQ5jlZYWOj7/PPPfV26dKnz6+EeJyeZ3Binbdu2+YqKinw+n8+3d+9e39ln\nn+36z5STTG6M1Xfffefz+Xy+iooKX7du3XwffPBBra+78TN1okxujJPP5/NNnz7dd8MNN9S5bzfG\nyUmu+o5VUI7UV61aRWpqKsnJySQmJnL99dezYMGCWq9ZuHAhQ4cOBaBbt27s3r2b7du3B2P3fmcC\nwr7Y2GWXXcaPfvSjH/x6uMfJSSYI/zi1bt2ajIwMAJo2bUpaWhpbt26t9Zpwj5WTTBD+sWrcuDEA\nBw8epKqqiubNm9f6uhs/UyfKBOEfp82bN7No0SKGDx9e577dGCcnuaB+YxWUor5lyxY6dOhQ87x9\n+/Zs2bLlhK/ZvHlzMHbvd6a4uDhWrFhBeno6/fr1Y82aNSHL41S4x8kJt8dp48aNFBUV0a1bt1rb\n3RyrH8rkxlhVV1eTkZFBq1at6NmzJ506dar1dTfG6USZ3BinO++8k0ceeYT4+LrLnls/TyfKVd+x\nCkpRj4uLc/S6o/+1cfr3/OHkvbt27cqmTZv44osvGDVqFD/72c9Clqc+wjlOTrg5TmVlZQwaNIiZ\nM2fStGnTY77uxlgdL5MbYxUfH09xcTGbN2+msLCwzsWpwj1OJ8oU7nF6++23admyJZmZmcc96g33\nODnJVd+xCkpRb9euHZs2bap5vmnTJtq3b3/c12zevDmk68U4yXTKKafUfEzs27cvFRUV7Ny5M2SZ\nnAj3ODnh1jhVVFRwzTXXcNNNN9X5g+zGWJ0ok5s/U82aNSMnJ4dPP/201nY3f6Z+KFO4x2nFihUs\nXLiQM888kyFDhrB06VJuueWWWq9xY5yc5Kr3WAXW3jcqKip8Z511lm/Dhg2+AwcOnPBE6ccffxzy\nkxBOMpWWlvqqq6t9Pp/P98knn/jOOOOMkGY6bMOGDY5OlIZjnJxkcmOcqqurfTfffLPvjjvu+MHX\nhHusnGQK91jt2LHDt2vXLp/P5/Pt27fPd9lll/mWLFlS6zXhHicnmdz63fP5fD6v1+vr37//Mdvd\n+t07Ua76jpXfFx99X0JCAo8//jgej4eqqiqGDRtGWloaTz31FAC33XYb/fr1Y9GiRaSmptKkSROe\nf/75YOw6oEzz58/nySefJCEhgcaNGzN37tyQZgIYMmQIy5cv53//+x8dOnTg97//PRUVFTWZwj1O\nTjK5MU4fffQRL774Iueffz6ZmZkATJkyha+//romV7jHykmmcI/Vtm3bGDp0KNXV1VRXV3PzzTfT\nu3dvV3/3nGRy42fq+w63VdwcJ6e56jtWuvhIRCSK6HZ2IiJRREVdRCSKqKiLiEQRFXURkSiioi4i\nEkVU1EVEooiKuohIFFFRFxGJIv8fnuCvVkdCoj4AAAAASUVORK5CYII=\n", "text": [ "" ] } ], "prompt_number": 8 }, { "cell_type": "code", "collapsed": false, "input": [ "# residuo\n", "result[1]" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 9, "text": [ "array([ 7.07862146])" ] } ], "prompt_number": 9 }, { "cell_type": "code", "collapsed": false, "input": [ "plot(x,y, \"ro\",t,g(t),t,p(t))" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 10, "text": [ "[,\n", " ,\n", " ]" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nN9lcOIf/AAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 10 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }